Re: lib/idr.c: initialize struct idr_layer

2008-01-27 Thread Vegard Nossum
On Jan 27, 2008 10:35 PM, Pekka Enberg <[EMAIL PROTECTED]> wrote: > > I think there's a pretty big chance I'm wrong (or misunderstanding > > something) here, so I'll just ask: > > setup_object() from mm/slub.c is what calls the ctor. Shouldn't this > > be called from slab_alloc() as well? (I'm mark

Re: lib/idr.c: initialize struct idr_layer

2008-01-27 Thread Pekka Enberg
Hi Vegard, On Jan 27, 2008 11:30 PM, Vegard Nossum <[EMAIL PROTECTED]> wrote: > > Depends on how you track object initialization. An object returned by > > kmem_cache_alloc() is always initialized if the cache it comes from has a > > constructor. > > I think there's a pretty big chance I'm wrong (

Re: lib/idr.c: initialize struct idr_layer

2008-01-27 Thread Vegard Nossum
On Jan 27, 2008 10:21 PM, Pekka J Enberg <[EMAIL PROTECTED]> wrote: > On Sun, 27 Jan 2008, Vegard Nossum wrote: > > Though in this case, idr_pre_get() actually *is* called first. Hmm... > > I think there's a pretty big chance that kmemcheck is at fault :-( > > Depends on how you track object initia

Re: lib/idr.c: initialize struct idr_layer

2008-01-27 Thread Pekka J Enberg
Hi Vegard, On Sun, 27 Jan 2008, Vegard Nossum wrote: > Though in this case, idr_pre_get() actually *is* called first. Hmm... > I think there's a pretty big chance that kmemcheck is at fault :-( Depends on how you track object initialization. An object returned by kmem_cache_alloc() is always ini

Re: lib/idr.c: initialize struct idr_layer

2008-01-27 Thread Vegard Nossum
On Jan 27, 2008 10:00 PM, Pekka Enberg <[EMAIL PROTECTED]> wrote: > Hi Vegard, > > On Jan 27, 2008 10:07 PM, Vegard Nossum <[EMAIL PROTECTED]> wrote: > > I am testing my kmemcheck patches, and it has come up with a couple of > > uses of uninitialized memory in lib/idr.c. These are (the line numbers

Re: lib/idr.c: initialize struct idr_layer

2008-01-27 Thread Pekka Enberg
Hi Vegard, On Jan 27, 2008 10:07 PM, Vegard Nossum <[EMAIL PROTECTED]> wrote: > I am testing my kmemcheck patches, and it has come up with a couple of > uses of uninitialized memory in lib/idr.c. These are (the line numbers > may differ slightly): [snip] > @@ -39,12 +39,16 @@ static struct idr_l

lib/idr.c: initialize struct idr_layer

2008-01-27 Thread Vegard Nossum
Hi, I am testing my kmemcheck patches, and it has come up with a couple of uses of uninitialized memory in lib/idr.c. These are (the line numbers may differ slightly): line 135 (sub_alloc): bm = ~p->bitmap; p->bitmap is uninitialized line 171 (sub_alloc): if (!p->ary[m]) { p->ary is uninitialize