From: "Jesper Juhl" <jesper.juhl@gmail.com>
To: "Amit Choudhary" <amit2030@yahoo.com>
Cc: "Pekka Enberg" <penberg@cs.helsinki.fi>,
"Hua Zhong" <hzhong@gmail.com>,
"Christoph Hellwig" <hch@infradead.org>,
"Linux Kernel" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] include/linux/slab.h: new KFREE() macro.
Date: Mon, 8 Jan 2007 12:10:00 +0100 [thread overview]
Message-ID: <9a8748490701080310n6c879acct594856588b2c0b13@mail.gmail.com> (raw)
In-Reply-To: <810563.91187.qm@web55604.mail.re4.yahoo.com>
On 08/01/07, Amit Choudhary <amit2030@yahoo.com> wrote:
>
> --- Pekka Enberg <penberg@cs.helsinki.fi> wrote:
>
> > On 1/8/07, Hua Zhong <hzhong@gmail.com> wrote:
> > > > And as I explained, it can result in longer code too. So, why
> > > > keep this value around. Why not re-initialize it to NULL.
> > >
> > > Because initialization increases code size.
> >
> > And it also effectively blocks the slab debugging code from doing its
> > job detecting double-frees.
> >
>
> Man, so you do want someone to set 'x' to NULL after freeing it, so that the slab debugging
> code can catch double frees. If you set it to NULL then double free is harmless.
No, setting the pointer to NULL doesn't make a double free harmless it
just hides a bug. The real fix would be to remove the double free.
If you just set the pointer to NULL and ignore the double free then
you've just bloated the kernel with an extra pointless assignment and
left a kfree() call in the kernel that should not be there. In my
book that's a bug.
If instead you rework the code to avoid the double free, then you
avoid the pointless NULL assignment and you get rid of a kfree call,
and you also get to review the logic and find the flaw that lead to a
double free in the first place. A double free is not something we
should just sweep under the carpet and forget about, it's very likely
an indication that some logic is flawed and should be fixed.
This KFREE macro does not belong in the kernel IMHO.
--
Jesper Juhl <jesper.juhl@gmail.com>
Don't top-post http://www.catb.org/~esr/jargon/html/T/top-post.html
Plain text mails only, please http://www.expita.com/nomime.html
next prev parent reply other threads:[~2007-01-08 11:10 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-01-07 8:46 Amit Choudhary
2007-01-07 10:24 ` Christoph Hellwig
2007-01-07 22:43 ` Amit Choudhary
2007-01-07 23:22 ` Vadim Lobanov
2007-01-08 0:02 ` Amit Choudhary
2007-01-08 2:35 ` Vadim Lobanov
2007-01-08 4:09 ` Amit Choudhary
2007-01-08 7:04 ` Vadim Lobanov
2007-01-08 7:29 ` Amit Choudhary
2007-01-08 8:15 ` Vadim Lobanov
2007-01-08 8:47 ` Amit Choudhary
2007-01-08 9:09 ` Al Viro
2007-01-08 7:49 ` Hua Zhong
2007-01-08 8:00 ` Pekka Enberg
2007-01-08 8:31 ` Amit Choudhary
2007-01-08 8:37 ` Al Viro
2007-01-08 8:39 ` Sumit Narayan
2007-01-08 8:44 ` Robert P. J. Day
2007-01-08 8:56 ` Amit Choudhary
2007-01-08 8:45 ` Pekka Enberg
2007-01-08 9:06 ` Amit Choudhary
2007-01-08 9:26 ` Pekka Enberg
2007-01-08 22:43 ` Valdis.Kletnieks
2007-01-09 19:02 ` Amit Choudhary
2007-01-09 19:19 ` Randy Dunlap
2007-01-10 4:57 ` Amit Choudhary
2007-01-09 22:57 ` Valdis.Kletnieks
2007-01-10 0:00 ` Amit Choudhary
2007-01-10 2:43 ` Valdis.Kletnieks
2007-01-08 11:10 ` Jesper Juhl [this message]
2007-01-08 8:05 ` Amit Choudhary
2007-01-08 8:12 ` Al Viro
2007-01-08 8:57 ` Hua Zhong
-- strict thread matches above, loose matches on Subject: below --
2007-07-23 17:55 Amit Choudhary
[not found] <7ADs5-25a-11@gated-at.bofh.it>
[not found] ` <7AP02-3l3-13@gated-at.bofh.it>
2007-01-08 18:29 ` Bodo Eggert
2007-01-01 0:17 Amit Choudhary
2007-01-01 3:01 ` Segher Boessenkool
2007-01-01 21:23 ` Pekka Enberg
2007-01-02 9:21 ` Christoph Hellwig
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9a8748490701080310n6c879acct594856588b2c0b13@mail.gmail.com \
--to=jesper.juhl@gmail.com \
--cc=amit2030@yahoo.com \
--cc=hch@infradead.org \
--cc=hzhong@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=penberg@cs.helsinki.fi \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®