From: "H. Peter Anvin" <hpa@zytor.com>
To: Jan Engelhardt <jengelh@computergmbh.de>
Cc: Rene Herman <rene.herman@gmail.com>,
Jason Uhlenkott <jasonuhl@jasonuhl.org>,
Arjan van de Ven <arjan@infradead.org>,
Tim Bird <tim.bird@am.sony.com>,
linux kernel <linux-kernel@vger.kernel.org>
Subject: Re: kfree(0) - ok?
Date: Wed, 15 Aug 2007 09:01:42 -0700 [thread overview]
Message-ID: <46C32366.2040900@zytor.com> (raw)
In-Reply-To: <Pine.LNX.4.64.0708151217120.5639@fbirervta.pbzchgretzou.qr>
Jan Engelhardt wrote:
> 0 is all-bits-zero.
> NULL is 0. ("It is.", above)
>
> Transitively, this would make NULL all-bits-zero.
> I might have missed something, though, perhaps that the cast to void* makes it
> intransitive.
It does -- a cast from integer to pointer isn't required to be a bitwise
noop. Machines on which NULL isn't bitwise zero do exist, and the C
standard allows them. What is almost certainly more common than "all
bits zero is not a NULL pointer" is "any NULL pointer is not necessarily
all bits zero"; there are quite a few machines on which there are
nonzero bitpatterns that are still valid NULL pointers, but an all-zero
memset() will still produce NULL pointers.
However, the particular supersets of the C standard that gcc provides
and which the kernel are written in (the latter being a proper subset of
the former) does not.
-hpa
next prev parent reply other threads:[~2007-08-15 16:09 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-08-14 22:59 kfree(0) - ok? Tim Bird
2007-08-14 22:55 ` Arjan van de Ven
2007-08-14 23:21 ` Jason Uhlenkott
2007-08-15 7:28 ` Jan Engelhardt
2007-08-15 8:37 ` Rene Herman
2007-08-15 9:20 ` Jan Engelhardt
2007-08-15 9:43 ` Jason Uhlenkott
2007-08-15 9:58 ` Rene Herman
2007-08-15 10:20 ` Jan Engelhardt
2007-08-15 10:27 ` Rene Herman
2007-08-15 13:58 ` Kyle Moffett
2007-08-15 14:06 ` Jan Engelhardt
2007-08-15 14:34 ` Kyle Moffett
2007-08-15 16:01 ` H. Peter Anvin [this message]
2007-08-15 8:52 ` Jason Uhlenkott
2007-08-15 9:18 ` Andreas Schwab
2007-08-15 9:32 ` Giacomo A. Catenazzi
2007-08-14 23:42 ` Satyam Sharma
2007-08-15 0:19 ` Christoph Lameter
2007-08-17 18:22 ` Andrew Morton
2007-08-17 18:31 ` Arjan van de Ven
2007-08-17 18:50 ` Satyam Sharma
2007-08-17 18:37 ` Jan Engelhardt
2007-08-17 20:43 ` Christoph Lameter
2007-08-17 21:17 ` Satyam Sharma
2007-08-17 21:32 ` Satyam Sharma
2007-08-17 21:13 ` Satyam Sharma
2007-08-17 21:14 ` Christoph Lameter
2007-08-17 21:42 ` Pekka Enberg
2007-08-17 23:22 ` Christoph Lameter
2007-08-17 23:40 ` Thomas Gleixner
2007-08-18 0:02 ` Satyam Sharma
2007-08-18 1:03 ` Christoph Lameter
2007-08-18 8:10 ` Pekka Enberg
2007-08-18 8:21 ` Jan Engelhardt
2007-08-17 21:46 ` Satyam Sharma
2007-08-14 23:13 ` Satyam Sharma
[not found] <fa.oMJ6o9vN0dnAoFR83/o4hg1EptE@ifi.uio.no>
2007-08-14 23:05 ` Robert Hancock
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=46C32366.2040900@zytor.com \
--to=hpa@zytor.com \
--cc=arjan@infradead.org \
--cc=jasonuhl@jasonuhl.org \
--cc=jengelh@computergmbh.de \
--cc=linux-kernel@vger.kernel.org \
--cc=rene.herman@gmail.com \
--cc=tim.bird@am.sony.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.