Bug 1170533

Summary: Should disalbe S3/S4 in default under Q35 machine type in rhel7
Product: Red Hat Enterprise Linux 7 Reporter: langfang <flang>
Component: qemu-kvm-rhevAssignee: Amit Shah <amit.shah>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: low    
Version: 7.1CC: flang, hhuang, juzhang, michen, mrezanin, ovasik, qiguo, sluo, virt-maint, xwei
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: qemu-kvm-rhev-2.1.2-21.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-03-05 09:59:20 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description langfang 2014-12-04 09:28:45 UTC
Description of problem:

S3/S4 should disable in default on rhel7,but when boot guest with "-M q35",S3/S4 is enalbe in default .

Version-Release number of selected component (if applicable):
Host:
# uname -r
3.10.0-212.el7.x86_64
# rpm -q qemu-kvm-rhev
qemu-kvm-rhev-2.1.2-15.el7.x86_64

Guest:rhel7
3.10.0-212.el7.x86_64

How reproducible:
100%

Steps to Reproduce:
1.Boot guest without the parameter that enable S3/S4

2.In guest
install package iasl

# cat /sys/firmware/acpi/tables/SSDT > ssdt
# iasl -d ssdt
# cat ssdt.dsl

3.

Actual results:S3/S4 enable in default

....
 Scope (\)
    {
        Name (_S3, Package (0x04)  // _S3_: S3 System State
        {
            One, 
            One, 
            Zero, 
            Zero
        })
        Name (_S4, Package (0x04)  // _S4_: S4 System State
        {
            0x00, 
            0x00, 
            Zero, 
            Zero
        })
        Name (_S5, Package (0x04)  // _S5_: S5 System State
        {
            Zero, 
            Zero, 
            Zero, 
            Zero
        })
    }


Expected results:

S3/S4 disable in default

Additional info:
Boot guest with the "-global PIIX4_PM.disable_s3=0 -global PIIX4_PM.disable_s4=0"

Will show the warning:
(qemu) qemu-kvm: Warning: "-global PIIX4_PM.disable_s3=0" not used
qemu-kvm: Warning: "-global PIIX4_PM.disable_s4=0" not used


if with :-M pc-i440fx-rhel7.1.0--->is disable in default

Comment 2 Amit Shah 2014-12-16 11:32:07 UTC
Patch posted upstream: http://news.gmane.org/find-root.php?message_id=d6e655e5dd3f8c297be681a145b25b2627495b86.1418728981.git.amit.shah%40redhat.com

Note that PIIX4_PM.* are to be used for i440fx machine type only.

For Q35, use the ICH9-LPC global.

Example:

  .. -global ICH9-LPC.disable_s3=1 -global ICH9-LPC.disable_s4=1

Comment 4 langfang 2014-12-17 08:31:08 UTC
Test this bug as follow version:
# uname -r
# rpm -q qemu-kvm-rhev
qemu-kvm-rhev-2.1.2-13.el7.bz1170533.x86_64

Guest:rhel7.1

Steps;
1.Boot guest
... -M q35...

2.After guest boot up
install package iasl

# cat /sys/firmware/acpi/tables/SSDT > ssdt
# iasl -d ssdt
# cat ssdt.dsl

3.check the S3/S4

#cat ssdt.dsl
...
    Scope (\)
    {
        Name (XS3, Package (0x04)
        {
            One, 
            One, 
            Zero, 
            Zero
        })
        Name (XS4, Package (0x04)
        {
            0x02, 
            0x02, 
            Zero, 
            Zero
        })
...

Results: The default is disable for s3/s4

Addtional info:

1.Boot guest with 
-M ....-global ICH9-LPC.disable_s3=1 -global ICH9-LPC.disable_s4=1

Results: S3/s4 disabled

2.Boot guest with 
-M ....-global ICH9-LPC.disable_s3=0 -global ICH9-LPC.disable_s4=0

Resutls: S3/S4 is enable

Comment 5 Jeff Nelson 2015-01-23 20:00:18 UTC
Fix included in qemu-kvm-rhev-2.1.2-21.el7

Comment 6 langfang 2015-01-26 05:57:02 UTC
Test this bug as follow version:
Host:
# uname -r
3.10.0-224.el7.x86_64
# rpm -q qemu-kvm-rhev
qemu-kvm-rhev-2.1.2-21.el7.x86_64

Guest:
3.10.0-224.el7.x86_64

Steps:

1.Boot guest with 
... -M q35...

2.After guest boot up
install package iasl

# cat /sys/firmware/acpi/tables/SSDT > ssdt
# iasl -d ssdt
# cat ssdt.dsl

3.check the S3/S4

#cat ssdt.dsl
...
    Scope (\)
    {
        Name (XS3, Package (0x04)
        {
            One, 
            One, 
            Zero, 
            Zero
        })
        Name (XS4, Package (0x04)
        {
            0x02, 
            0x02, 
            Zero, 
            Zero
        })
...

Results: The default is disable for s3/s4

Addtional info:

1.Boot guest with 
-M ....-global ICH9-LPC.disable_s3=1 -global ICH9-LPC.disable_s4=1

Results: S3/s4 disabled

2.Boot guest with
-M ....-global ICH9-LPC.disable_s3=0 -global ICH9-LPC.disable_s4=0

Resutls: S3/S4 is enable

3.Test win7 guest with q35

 a.boot guest  without the parameter of S3/S4, will see :

  powercfg -h on-->powcfg -h on--> will see "The system firmware does not support..."

 b.boot guest with  the parameter of S3/S4,"-global ICH9-LPC.disable_s3=0 -global ICH9-LPC.disable_s4=0"

  results:S3/S4 are available

 C.boot guest with the parameter of S3/S4,"-global ICH9-LPC.disable_s3=1 -global ICH9-LPC.disable_s4=1

   powercfg -h on-->powcfg -h on--> will see "The system firmware does not support...


According to above test ,this bug has been fixed.

Comment 10 errata-xmlrpc 2015-03-05 09:59:20 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHSA-2015-0624.html

Comment 11 Marcel Apfelbaum 2015-04-15 09:46:10 UTC
*** Bug 1170111 has been marked as a duplicate of this bug. ***