Re: [PATCH 2.6.12.5 1/2] lib: allow idr to be used in irq context

From: Luben Tuikov (luben_tuikov_at_adaptec.com)
Date: 08/21/05

  • Next message: Danial Thom: "Re: 2.6.12 Performance problems"
    Date:	Sun, 21 Aug 2005 10:27:58 -0700 (PDT)
    To: James Bottomley <James.Bottomley@steeleye.com>, luben_tuikov@adaptec.com
    
    

    --- James Bottomley <James.Bottomley@SteelEye.com> wrote:
    > On Sun, 2005-08-21 at 08:49 -0700, Luben Tuikov wrote:
    > > 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.
    >
    > Just a minute, that's not what idr was designed for. It was really
    > designed for enumerations (like disk) presented to the user. That's why
    > using it in IRQ context hasn't been considered.

    Hi James, how are you?

    Is this the only use _you_ could find for a *radix tree*? ;-)
    Since of course sd.c uses it just as an enumeration, according to
    you this must be the only use? :-)

    It was designed as a general purpose id to pointer translation
    service, just as the comment in it says.

    > However, there is an infrastructure in the block layer called the
    > generic tag infrastructure which was designed precisely for this purpose
    > and which is designed to operate in IRQ context.

    James, I'm sure you're well aware that,
       - a request_queue is LU-bound,
       - a SCSI _transport_ (*ANY*) can _only_ address domain devices, but
         _not_ LUs. LUs are *not* seen on the domain.

    See the different associations? Then why are you posting such emails?

    Andrew, please apply this patch.

    Thanks,
         Luben

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


  • Next message: Danial Thom: "Re: 2.6.12 Performance problems"