[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] Merge freefall.cl.cam.ac.uk:/auto/groups/xeno-xenod/BK/xen-2.0-testing.bk



ChangeSet 1.1457, 2005/05/18 22:42:16+01:00, iap10@xxxxxxxxxxxxxxxxxxxxx

        Merge 
freefall.cl.cam.ac.uk:/auto/groups/xeno-xenod/BK/xen-2.0-testing.bk
        into freefall.cl.cam.ac.uk:/auto/groups/xeno-xenod/BK/xen-unstable.bk



 reboot.c |   34 +++++++++++++++++++++-------------
 1 files changed, 21 insertions(+), 13 deletions(-)


diff -Nru a/linux-2.6.11-xen-sparse/arch/xen/kernel/reboot.c 
b/linux-2.6.11-xen-sparse/arch/xen/kernel/reboot.c
--- a/linux-2.6.11-xen-sparse/arch/xen/kernel/reboot.c  2005-05-19 05:04:20 
-04:00
+++ b/linux-2.6.11-xen-sparse/arch/xen/kernel/reboot.c  2005-05-19 05:04:20 
-04:00
@@ -76,6 +76,20 @@
 #define netif_resume()  do{}while(0)
 #endif
 
+#ifdef CONFIG_XEN_USB_FRONTEND
+    extern void usbif_resume();
+#else
+#define usbif_resume() do{}while(0)
+#endif
+
+#ifdef CONFIG_XEN_BLKDEV_GRANT
+    extern int gnttab_suspend(void);
+    extern int gnttab_resume(void);
+#else
+#define gnttab_suspend() do{}while(0)
+#define gnttab_resume()  do{}while(0)
+#endif
+
     extern void time_suspend(void);
     extern void time_resume(void);
     extern unsigned long max_pfn;
@@ -99,31 +113,22 @@
 
     irq_suspend();
 
+    gnttab_suspend();
+
     HYPERVISOR_shared_info = (shared_info_t *)empty_zero_page;
     clear_fixmap(FIX_SHARED_INFO);
 
     memcpy(&suspend_record->resume_info, &xen_start_info,
-          sizeof(xen_start_info));
+           sizeof(xen_start_info));
 
     HYPERVISOR_suspend(virt_to_machine(suspend_record) >> PAGE_SHIFT);
 
-    HYPERVISOR_vm_assist(VMASST_CMD_enable,
-                        VMASST_TYPE_4gb_segments);
-#ifdef CONFIG_XEN_WRITABLE_PAGETABLES
-    HYPERVISOR_vm_assist(VMASST_CMD_enable,
-                        VMASST_TYPE_writable_pagetables);
-#endif
-
     shutting_down = -1; 
 
     memcpy(&xen_start_info, &suspend_record->resume_info,
-          sizeof(xen_start_info));
+           sizeof(xen_start_info));
 
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
-    set_fixmap_ma(FIX_SHARED_INFO, xen_start_info.shared_info);
-#else
     set_fixmap(FIX_SHARED_INFO, xen_start_info.shared_info);
-#endif
 
     HYPERVISOR_shared_info = (shared_info_t *)fix_to_virt(FIX_SHARED_INFO);
 
@@ -137,6 +142,7 @@
     HYPERVISOR_shared_info->arch.pfn_to_mfn_frame_list =
         virt_to_machine(pfn_to_mfn_frame_list) >> PAGE_SHIFT;
 
+    gnttab_resume();
 
     irq_resume();
 
@@ -147,6 +153,8 @@
     blkdev_resume();
 
     netif_resume();
+
+    usbif_resume();
 
     __sti();
 

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.