Bug 6689 - AGP bus mastering inhibiting CPU power saving states???
AGP bus mastering inhibiting CPU power saving states???
Status: REJECTED DOCUMENTED
Product: ACPI
Classification: Unclassified
Component: Power-Processor
i386 Linux
: P2 normal
Assigned To: Len Brown
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2006-06-14 06:31 UTC by Michael
Modified: 2007-12-30 22:11 UTC (History)
3 users (show)

See Also:
Kernel Version: 2.6.16
Tree: Mainline
Regression: ---


Attachments
lspci -vv output (9.57 KB, text/plain)
2006-06-14 23:11 UTC, Michael
Details
lspci -vv output (corrected) (10.96 KB, text/plain)
2006-06-14 23:16 UTC, Michael
Details

Description Michael 2006-06-14 06:31:18 UTC
Most recent kernel where this bug did not occur: 
Distribution:
Hardware Environment: Thinkpad X31
Software Environment: Debian Unstable, Kernel 2.6.16
Problem Description:

More a question, maybe a bug:

I have noticed that loading the radeon dri module in xorg prevents the CPU from
entering C3 power saving state. I filed a bug report (see
https://bugs.freedesktop.org/show_bug.cgi?id=7119).

The developer Michel D
Comment 1 Len Brown 2006-06-14 18:08:29 UTC
This is a chipset question.  What chipset does the X31 have?
Got lspci -vv output?
Comment 2 Michael 2006-06-14 23:11:01 UTC
Created attachment 8313 [details]
lspci -vv output

Do you need any more info?
Comment 3 Michael 2006-06-14 23:16:18 UTC
Created attachment 8314 [details]
lspci -vv output (corrected)

Correction (the last output did not include all infos as it was done as user)
Comment 4 Dave Airlie 2006-06-19 21:21:15 UTC
can you try loading the radeon module with no_wb=1 before starting X, and seeing
do you still get C3 inhibited?

not sure if that is in 2.6.16, but 2.6.17 has it.
Comment 5 Michael 2006-06-20 10:07:11 UTC
I have done that without success. See
https://bugs.freedesktop.org/show_bug.cgi?id=7119

What about the question if AGP bus mastering should have an effect on CPU power
saving states at all? If Michel is right, AGP bus mastering shouldn't stop the
CPU  from entering power saving states at all. Is that correct?

Cheers,

Michael
Comment 6 Michael 2006-08-07 01:31:33 UTC
So, does nobody really know the answer to this question or is it just lacking
interested?

I know that power saving is not really a high priority at the moment, but still
it's awful to see that you get 4-5 h battery time when running under windows but
only 2-3 hours under linux on many laptop systems.

Sure, entering C3 is just one of many power saving components but it does add
its part to it. So an answer to the question, whether C3 should be inhibited by
AGP bus mastering or not would be quite useful. (at least it makes a change from
ca.  2h15m to 2h45m on my setup, which is not negligble)

Any input to this?

Thanks

Michael
Comment 7 Robert Hancock 2007-06-16 12:32:25 UTC
See my posting on freedesktop.org bugzilla entry above. I suspect that the power increase is due to radeon (and other DRI modules) generating vertical blanking interrupts constantly even when nobody cares about receiving them.
Comment 8 Natalie Protasevich 2007-10-22 22:52:01 UTC
Michael,
Any update from your side? This area no longer suffers no interest... Has the problem been resolved for you?
Thanks.
Comment 9 Michael 2007-10-23 00:57:48 UTC
Natalie,

thanks for asking.

Actually, nothing has changed. But we all know that linux is not really outstanding in power saving issues. In this respect, this is just one of the underlying problems. And all of these are very difficult to resolve.

Furthermore, I guess, there aren't very many users of an ATI radeon r100 left nowadays. There are also more bugs in the driver that remain unsolved (e.g. http://bugzilla.kernel.org/show_bug.cgi?id=6626 ).

I'm for myself simply living with that now and may decide to buy a new laptop one or another day (then with a different graphics chip).

Kind regards,

Michael

P.S.: Last kernel tested was 2.6.21. I will update to 2.6.23 in the near future. If anything changes I will report (but I don't expect it).
Comment 10 Len Brown 2007-12-28 21:14:53 UTC
Please paste the contents of /proc/acpi/processor/*/power
for the 3D and non-3D cases.  Best if you can make them
under similar scenarios -- such as shortly after reboot into that config.

The "bus master activity" bitmask will tell us if the
chipset is telling the OS about bus master activity.

Re: VBI
What do you see in /proc/interrupts for the 3D vs non-3D cases?
does the rate of interrupts for a device go up for 3D?

Perhaps you can run powertop to identify the C-state residency
and the interrupt sources and rates?

http://www.lesswatts.org/projects/powertop/

Comment 11 Len Brown 2007-12-30 22:11:17 UTC
The HW guys filled me in on this one...

Yes, theoretically it is possible to do non-snooped AGP/memory transactions
while in C3 w/o waking the processor.  However, the processor+chipset
at hand does not distinguish between snooped and non-snooped AGP
transactions for the purpose of notifying the processor of AGP activity.
So any AGP/memory activity will indeed keep the processor out of C3.

The HW guys expressed surprise that just loading the driver
caused constant activity that disables C3.  To me this suggests
that there may be room for software optimization to reduce
activity, increase C3 residency, and save power.

I think the ACPI C3 question is answered, so this bug is closed.
You may want to take up this issue with the graphics folks
to see if they can optimize their software for power.

Note You need to log in before you can comment on or make changes to this bug.