On Wed, Aug 06, 2014 at 01:22:02PM -0400, Waiman Long wrote: > The queued rwlock does not support the use of recursive read-lock in > the process context. With changes in the lockdep code to check and > disallow recursive read-lock, it is also necessary for the locking > selftest to be updated to change the process context recursive read > locking results from SUCCESS to FAILURE for rwlock. > +static void rlock_AHA1(void) > +{ > + RL(X1); > + HARDIRQ_ENTER(); > + RL(X1); // this one should NOT fail > + HARDIRQ_EXIT(); > +} > + > +static void rlock_AHA1B(void) > +{ > + RL(X1); > + HARDIRQ_ENTER(); > + RL(X2); // this one should NOT fail > + HARDIRQ_EXIT(); > +} > + > +static void rlock_ASAHA1(void) > +{ > + RL(X1); > + SOFTIRQ_ENTER(); > + RL(X1); // this one should NOT fail > + HARDIRQ_ENTER(); > + RL(X1); // this one should NOT fail > + HARDIRQ_EXIT(); > + SOFTIRQ_EXIT(); > } Thanks!