Re: lock_stat &rq->lock/1 class name meaning

From: Yong Zhang
Date: Thu May 12 2011 - 08:27:11 EST


On Thu, May 12, 2011 at 02:11:02PM +0200, Juri Lelli wrote:
> Thanks!
>
> On 05/12/2011 12:57 PM, Yong Zhang wrote:
> >On Wed, May 11, 2011 at 06:26:10PM +0200, Juri Lelli wrote:
> >>Hi,
> >>I'm trying to collect contention statistics through /proc/lock_stat
> >>about scheduler data structures.
> >>
> >>What I obtain if a do "cat /proc/lock_stat" is something like:
> >>...
> >>&rq->lock: 13128 13128 0.43
> >>[...]
> >>
> >>I guess the first one is about the per-rq (per-CPU) spinlock, but
> >>what about the second? What the "/1" stands for?
> >
> >It is also rq but it's subclass is 1.
> >
> >Take a look at raw_spin_lock_nested(&this_rq->lock, SINGLE_DEPTH_NESTING);
> >in _double_lock_balance()
>
> Ok, I've put more light on this also looking at lockdep.h comments
> and lockdep-design documentation.
>
> Since I'm probably not the only one having troubles undestanding
> lock_stat output, maybe could be useful to add something on this
> inside lockstat documentation (I can try to do this). What you
> think?

Any improvement will be good :)

Cc'ing PeterZ and Ingo.

Thanks,
Yong
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/