RE: kref refcnt and false positives

From: Pallipadi, Venkatesh
Date: Thu Dec 14 2006 - 18:52:03 EST




>-----Original Message-----
>From: Eric Dumazet [mailto:dada1@xxxxxxxxxxxxx]
>Sent: Wednesday, December 13, 2006 11:57 PM
>To: Andrew Morton
>Cc: Greg KH; Pallipadi, Venkatesh; Arjan; linux-kernel; Eric
>W. Biederman
>Subject: Re: kref refcnt and false positives
>
>
>I agree this 'optimization' is not "good" (I was the guy who
>suggested it
>http://lkml.org/lkml/2006/1/30/4 )
>
>After Eric Biederman message
>(http://lkml.org/lkml/2006/1/30/292) I remember
>adding some stat counters and telling Greg to not put the
>patch in because
>kref_put() was mostly called with refcount=1. But the patch
>did its way. I
>*did* ask Greg to revert it, but cannot find this mail
>archived somewhere...
>
>But I believe Venkatesh problem comes from its release()
>function : It is
>supposed to free the object.
>If not, it should properly setup it so that further uses are OK.
>
>ie doing in release(kref)
>atomic_set(&kref->count, 0);
>

Agreed that setting kref refcnt to 0 in release will solve the probloem.
But, once the optimization code is removed, we don't need to set it to
zero as release will only be called after the count reaches zero anyway.

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