--- Andrew Morton <[EMAIL PROTECTED]> wrote: > Jim Houston <[EMAIL PROTECTED]> wrote: > > > > On Tue, 2005-08-16 at 18:03, Luben Tuikov wrote: > > > > > If idr_get_new() or idr_remove() is used in IRQ context, > > > then we may get a lockup when idr_pre_get was called > > > in process context and an IRQ interrupted while it held > > > the idp lock. > > > > Hi Everyone, > > > > Luben's changes make sense please merge them. > > > > Well yes, the change makes sense if there's actually a caller which needs it. > > If there is such a caller then Luben should identify it, please.
Hi Andrew, The caller is the aic94xx SAS LLDD. It uses IDR to generate unique task tag for each SCSI task being submitted. It is then used to lookup the task given the task tag, in effect using IDR as a fast lookup table. Yes, I'm also not aware of any other users of IDR from mixed process/IRQ context or for SCSI Task tag purposes. Luben - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/