lkml.org 
[lkml]   [2008]   [Apr]   [14]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateMon, 14 Apr 2008 20:54:23 +0200
FromManfred Spraul <>
SubjectRe: [PATCH 00/13] Re: Scalability requirements for sysv ipc
Nadia Derbey wrote:
>
> Well, 1 interface changes, 1 is added and another one went away:
>
> 1) for the preload part (it becomes like the radix-tree preload part):
>
> int idr_pre_get(struct idr *, gfp_t);
> would become
> int idr_pre_get(gfp_t);
>
Btw, that's one point I didn't understand about the idr code:
Is it interrupt-safe? It uses spin_lock_irqsave and gfp_t, this implies
that it could be called from all contexts.

But the prealloc made me a bit nervous: does it handle idr_pre_get();
interrupt with another idr_pre_get(), add, pre_get_end, interrupt ends,
... correctly?
If it's only intended to be called from process context I would remove
the _irqsave and perhaps add an assert(!in_interrupt())
--
Manfred


\
 
 \ /
  Last update: 2008-04-14 20:57    [from the cache]
©2003-2009