On (Mon) 12 Jan 2015 [12:26:08], Marcel Apfelbaum wrote: > On 12/16/2014 01:23 PM, Amit Shah wrote: > >PIIX4 has disable_s3 and disable_s4 properties to enable or disable PM > >functions. Add such properties to the ICH9 chipset as well for the Q35 > >machine type. > > > >S3 / S4 are not guaranteed to always work (needs work in the guest as > >well as QEMU for things to work properly), and disabling advertising of > >these features ensures guests don't go into zombie state if something > >isn't working right. > > > >The defaults are kept the same as in PIIX4: both S3 and S4 are enabled > >by default. > > > >These can be disabled via the cmdline: > > > > ... -global ICH9-LPC,disable_s3=1 -global ICH9-LPC,disable_s4=1 > ^^^ ^^^ > Should be -global ICH9-LPC.disable_s3=1 -global ICH9-LPC.disable_s4=1
Indeed, thanks. > Hi Amit, thanks for answering my prev question. > I have one more:) > > I didn't see how the properties are connected to the ACPI mechanism. > I tested it with your suggested command line and it didn't work from some > reason. > - I used ... -M Q35 -global ICH9-LPC.disable_s3=1 -global > ICH9-LPC.disable_s4=1 > - On guest: pm-is-supported --hibernate && echo $? => 0 (enabled) > - Furthermore, pm-hibernate worked > > Maybe I am missing something or maybe this is not in the scope of this patch. Hibernate is special for Linux guests. If acpi-based hibernate isn't available, Linux simulates it by writing a hibernate image and doing a shutdown of the guest instead of entering the S4 state. To test, there are two ways: check if s3 works after passing this parm, or check the acpi blobs inside the guest for the advertisement of the params. Amit