diff --git a/loopy/schedule/device_mapping.py b/loopy/schedule/device_mapping.py
index b1267bbe8201a5d49c8bec65f3fa07536b6b9476..b2cbdcc52822449dc20384ee7acb0012df59df89 100644
--- a/loopy/schedule/device_mapping.py
+++ b/loopy/schedule/device_mapping.py
@@ -32,7 +32,7 @@ def map_schedule_onto_host_or_device(kernel):
             [CallKernel(kernel_name=kernel.name,
                         extra_inames=[],
                         extra_args=[])] +
-            kernel.schedule +
+            list(kernel.schedule) +
             [ReturnFromKernel(kernel_name=kernel.name)])
         return kernel.copy(schedule=new_schedule)