Messages in this thread | | | Date | Mon, 6 Mar 2006 08:16:51 +0000 | From | Al Viro <> | Subject | Re: 9pfs double kfree |
| |
On Mon, Mar 06, 2006 at 09:56:22AM +0200, Pekka Enberg wrote: > On 3/6/06, Dave Jones <davej@redhat.com> wrote: > > I wonder if we could get away with something as simple as.. > > > > #define kfree(foo) \ > > __kfree(foo); \ > > foo = KFREE_POISON; > > > > ? > > It's legal to call kfree() twice for NULL pointer. The above poisons > foo unconditionally which makes that case break I think.
Legal, but rather bad taste. Init to NULL, possibly assign the value if kmalloc(), then kfree() unconditionally - sure, but that... almost certainly one hell of a lousy cleanup logics somewhere.
There's worse problem with that, though: kfree(container_of(......)); and it simply won't compile. - 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/
| |