[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Patch][RFC] fix PAL_HALT ( is Re: [Xen-ia64-devel] [RFC] dumpcore is failed for PAL_HALT)
Hi, Alex Thank you for your elaboration. I agree your opinion. >So, for PV domains, cpu_halt() should just take the vcpu offline. I >don't think there's any reason to special case the last vcpu going >offline and shutdown the domain. That's not what real hardware does. Exactly. >Machine restart/reboot should (and does) happen transparently when Xen >catches the EFI call. To support poweroff, I think we should set >pm_power_off to a Xen specific hypervisor shutdown routine. The >abstraction is already in place to do this. OK, I'll try it. >Do VTI domains implement enough ACPI to provide the OS a fake S5 power >state? If not, a PV-on-HVM driver could set pm_power_off and use a >hypercall, but that means HVM domains would need a Xen driver for some >pretty basic functionality. Maybe all vcpus in cpu_halt() should only >be cause for a domain shutdown for VTI domains? Hmm. Some OSes on VTI may use cpu_halt() on all vcpu. So I add printk like "call PAL_HALT on all cpu", and call domain_shutdown() for VTI domain. Is this OK? Best Regards, Akio Takebe >On Wed, 2007-01-24 at 11:14 +0100, tgingold@xxxxxxx wrote: >> Selon Isaku Yamahata <yamahata@xxxxxxxxxxxxx>: >> >> > On Wed, Jan 24, 2007 at 11:43:37AM +0900, Akio Takebe wrote: >> [...] >> > According to SDM vol2 11.9, PAL_HALT places cpu in low power state. >> Correct. >> >> > So the current behaviour that xen/ia64 shutdown unconditionally is >> > wrong. >> Yes, but that's the code in linux/ia64. >> Why linux/ia64 doesn't call the shutdown EFI runtime service ? I don't >> know. >> Maybe Alex knows the answer. > > I think we need to be sure we're getting the correct expected user >behavior for domains. A user expects the following on real hardware: > > * halt: Machine is stopped, not shutdown, not rebooted. > Linux/ia64 uses PAL_HALT for this. > * restart/reboot: Machine is reset. Linux/ia64 uses > efi.reset_system for this. > * poweroff: Machine is turned off. Linux/ia64 uses ACPI S5 power > state if pm_power_off is set, otherwise behaves as if halted. > >So, for PV domains, cpu_halt() should just take the vcpu offline. I >don't think there's any reason to special case the last vcpu going >offline and shutdown the domain. That's not what real hardware does. >Machine restart/reboot should (and does) happen transparently when Xen >catches the EFI call. To support poweroff, I think we should set >pm_power_off to a Xen specific hypervisor shutdown routine. The >abstraction is already in place to do this. > >Do VTI domains implement enough ACPI to provide the OS a fake S5 power >state? If not, a PV-on-HVM driver could set pm_power_off and use a >hypercall, but that means HVM domains would need a Xen driver for some >pretty basic functionality. Maybe all vcpus in cpu_halt() should only >be cause for a domain shutdown for VTI domains? > >> > CPU hot-unplug routine also calls cpu_halt(). In that case, >> > only the targeted cpu should be halted. We don't want domain shutdown. >> If the last vcpu calls PAL_HALT, the domain can be safely shut down. > > It's safe, but I don't agree that it should. Thanks, > > Alex > > >_______________________________________________ >Xen-ia64-devel mailing list >Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx >http://lists.xensource.com/xen-ia64-devel _______________________________________________ Xen-ia64-devel mailing list Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-ia64-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |