jonkery huang
2008-Jul-22 09:35 UTC
[Xen-devel] Redhat enterprise linux 4 update 7 guest suspend hang
Hi, I have installed a Redhat EL4U7 HVM guest, then issue xm suspend, the command will hang at xc_save: 1. # ps aux ...... root 16761 0.1 0.9 11264 5984 pts/9 S+ 14:17 0:00 python /usr/sbin/xm suspend 41 root 16763 0.0 0.0 1988 480 ? S 14:17 0:00 /usr/lib/xen/bin/xc_save 29 41 0 0 4 # strace -p 16763 Process 16763 attached - interrupt to quit read(0, seems it is waiting for something. 2. Check with this guest, it has pv dirver installed: # xm li Name ID Mem VCPUs State Time(s) Domain-0 0 585 4 r----- 1144.9 OVM_EL4U7_X86_HVM_4GB 40 1024 1 -b---- 82.2 # python Python 2.4.3 (#1, Jun 6 2007, 15:09:38) [GCC 4.1.1 20070105 (Red Hat 4.1.1-52)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import sys >>> import xen.lowlevel.xc >>> from xen.xend.XendConstants import * >>> xc = xen.lowlevel.xc.xc() >>> hvm_pvdrv = xc.hvm_get_param(40, HVM_PARAM_CALLBACK_IRQ) >>> if hvm_pvdrv: ... print "This domain has PV drivers" ... This domain has PV drivers 3. Check with EL4U7 kernel kernel-2.6.9-70.0.0.0.1.EL, HVM_PARAM_CALLBACK_IRQ is set when init platform-pci which is built in to the kernel. 4. For hvm guest with pv driver, xend will deal with it in a special way, paste some code from tools/python/xen/xend/XendDomainInfo.py # HVM domain shuts itself down only if it has PV drivers if self.info.is_hvm(): hvm_pvdrv = xc.hvm_get_param(self.domid, HVM_PARAM_CALLBACK_IRQ) if not hvm_pvdrv: code = REVERSE_DOMAIN_SHUTDOWN_REASONS[reason] log.info("HVM save:remote shutdown dom %d!", self.domid) xc.domain_shutdown(self.domid, code) In the comment, it says "HVM domain shuts itself down only if it has PV drivers", what does this mean? how to shutdown a HVM guest with pv driver? -- Thanks Jonkery _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel