Bug 425812

Summary: C3 state only available if machine boots off battery
Product: [Fedora] Fedora Reporter: Bradley <bbaetz>
Component: kernelAssignee: Kernel Maintainer List <kernel-maint>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: low    
Version: 8CC: acpi-bugzilla
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-04-10 08:00:33 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 165150    
Attachments:
Description Flags
acpidump
none
CPU0 _CST (binary format)
none
CPU1 _CST none

Description Bradley 2007-12-16 06:45:46 UTC
Description of problem:

C3 power state only shows up in /proc/acpi/processor/CPU*/power if the machine
boots off battery.

This is on a new HP dv6519tx laptop.

Version-Release number of selected component (if applicable):

kernel-2.6.23.8-63.fc8

How reproducible:

Always

Steps to Reproduce:
1. Boot laptop while connected to AC
2. cat /proc/acpi/processor/CPU0/power
3. Notice only C1 and C2 are shown:

active state:            C0
max_cstate:              C8
bus master activity:     00000000
maximum allowed latency: 2000 usec
states:
    C1:                  type[C1] promotion[--] demotion[--] latency[001]
usage[00011849] duration[00000000000000000000]
    C2:                  type[C2] promotion[--] demotion[--] latency[017]
usage[00149276] duration[00000000000174245808]

4. Remove AC power cable
5. Results don't change
6. Boot laptop when *not* connected to AC
7. cat /proc/acpi/processor/CPU0/power
8. C1, C2, and C3 are shown
9. Plug laptop in AC
10. C3 state remains, and is used (counters increase, shown in powertop, etc)

Additional info:

will attach acpidump, plus what I *think* are the _CST tables, from acpidump
--addr 0x7FED2425 --length 0x5EA and acpidump --addr 0x7FED2A0F --length 0x85

I've checked that the table contents are the same regardless of whether the
laptop was booted off AC or battery and regardless of whether the laptop is
currently plugged in or not

Comment 1 Bradley 2007-12-16 06:45:46 UTC
Created attachment 289712 [details]
acpidump

Comment 2 Bradley 2007-12-16 06:46:58 UTC
Created attachment 289713 [details]
CPU0 _CST (binary format)

Comment 3 Bradley 2007-12-16 06:47:33 UTC
Created attachment 289714 [details]
CPU1 _CST

This is a dual core T7100, so CPU1 is really the second core of CPU0

Comment 4 Bradley 2007-12-16 06:52:47 UTC
When booting on battery, /proc/acpi/processor/CPU0/power is:

active state:            C0
max_cstate:              C8
bus master activity:     00000000
maximum allowed latency: 2000 usec
states:
    C1:                  type[C1] promotion[--] demotion[--] latency[001]
usage[00000183] duration[00000000000000000000]
    C2:                  type[C2] promotion[--] demotion[--] latency[001]
usage[00009437] duration[00000000000008537003]
    C3:                  type[C3] promotion[--] demotion[--] latency[057]
usage[00046654] duration[00000000000323653138]


Comment 5 Bradley 2008-03-07 12:53:00 UTC
Still happens, with kernel-2.6.23.15-137.fc8

Comment 6 Bradley 2008-03-12 05:23:06 UTC
Upgraded BIOS, same result. No change to CST/IST tables in the update (the
address changed in SSDT, but thats it)

Comment 7 Bradley 2008-04-10 08:00:33 UTC
The latest BIOS changes the CST to not depend on the power cord status any more.
Its still a linux bug rather than a BIOS bug, since Windows didn't behave this
way with the older BIOS, but since its not reproducible with the newer BIOS, I
guess its WONTFIX.