On Tue, Sep 19, 2006 at 03:53:17PM -0700, David Miller wrote: > From: Matthew Wilcox <matthew@xxxxxx> > > NOTE to architecture maintainers: generic_raw_read_trylock() is > > completely unfit for use and will cause lockups if used in interrupt > > context. > > I was about to go an fix SPARC but then looked in the tree > for actual users, and I see one, and only one, in the lockdep > code which tries to grab the tasklist_lock. > > That's it (well.. there's one strange IA64 specific case in the MCA > code too). > > You say you were fixing up PARISC and actually hit this problem, was > it exactly this lockdep case? I really doubt it... That's not quite what I said; I was chasing some problems on parisc where we were getting read_lock deadlocks, and spotted this problem. It's not beyond the bounds of possibility that we'll have a real user for this function in the future. The real bug was almost certainly elsewhere: http://git.parisc-linux.org/?p=linux-2.6.git;a=commit;h=513b38677e9bb51d32f4cb401105bf828dfcd685 http://git.parisc-linux.org/?p=linux-2.6.git;a=commit;h=93d8d8dff74923dc9eb511c96ee3ccb918666049 Essentially, a fix for one rather subtle bug introduced a somewhat less subtle one (which nevertheless went unfound for, er, 11 months ;-) - To unsubscribe from this list: send the line "unsubscribe sparclinux" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html