On Sun, 2009-09-06 at 22:53 +0800, Li, Aubrey wrote:
> Sebastien.Roy <> wrote:
> 
> > On Sun, 2009-09-06 at 13:39 +0800, Aubrey Li wrote:
> >> okay, thanks but need your another help.
> >> 
> >> I did a quick investigation and found that there is a xorg related
> >> kthread causing
> >> the scheduler ping-pong between "idle" thread and this xorg related
> >> thread. 
> >> 
> >> Could you please disable X by "pfexec svcadm disable gdm" and try
> >> powertop again?
> >> Please make sure you are still using event mode, not poll-mode.
> > 
> > With no Xorg, and with event mode, powertop indeed shows that the
> > system remains mostly in the lowest P-state. 
> 
> Sounds good, it looks like we found the cause. Thanks for the validation!

I Cc'ed Alan Coopersmith, maybe he can help with pointers on how to
root-cause this.  I don't think we've found the cause.  We've only
determined that _something_ is causing Xorg to do stuff on an idle
system...

> 
> > I'm still a bit confused as to why poll and event modes would show
> > different results when Xorg is running...
> 
> As I said, event mode is more aggressive. The load of Xorg is enough to
> drive p-state transition under event mode but it is ignored in the poll mode.

Okay.

> 
> > 
> > Is there a CR filed against Xorg that I can look at?
> 
> I wonder, is this a regression? With Xorg, did powertop report 100% highest
> p-state residency on b121 and previous version?

That's a yes for build 121, but powertop didn't work at all in the other
builds I had running on this laptop (something about missing dtrace
probes).  I don't remember noticing this until recently, so it's
possible that this was introduced at some point after build 118 (the
build I had running before 121).

> If this is a regression, we need to ask Xorg guys what they did to hurt
> idle power, :)

Or at least some help root-causing this.  We don't know if the cause is
the X server or a client issuing X requests for no reason (I suspect
it's the latter)...  I wrote a little dtrace script that dumps X
requests, and on an idle system, I see hundreds of X requests every
second from X client ID 43.  Now how do I map that to a process ID?

-Seb


Reply via email to