lkml.org 
[lkml]   [2012]   [Sep]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] lockdep: Check if nested lock is actually held
From
Date
On Thu, 2012-09-13 at 12:10 +0200, Maarten Lankhorst wrote:
> Hey,
>
> Op 13-09-12 11:59, Peter Zijlstra schreef:
> > On Thu, 2012-09-13 at 11:39 +0200, Maarten Lankhorst wrote:
> >> It is considered good form to lock the lock you claim to be nested in.
> > Uhm yeah.. cute. You actually found a site where this triggered?
> >
> Not in mainline, I was working on some lockdep annotations for my work on
> moving ttm reservations to base kernel, and I wrote a whole bunch of tests
> to stress interaction between reservations and locks, one of the tests I
> was doing was taking a spinlock without the nested object:
>
> static void reservation_test_fence_nest_unreserved(void)
> {
> struct reservation_object o;
>
> reservation_object_init(&o);
>
> spin_lock_nest_lock(&o.fence_lock, &o);
> spin_unlock(&o.fence_lock);
> }
>
> I would have expected it to fail, and the patch fixed it. As a nice side effect
> it also complained about another hack I was doing elsewhere with reservations to
> tests for deadlocks, and it forced me to fix it in a slightly less hacky way.

Nice.. thanks for noticing!


\
 
 \ /
  Last update: 2012-09-13 13:01    [W:0.029 / U:39.488 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site