From: Jos Hulzink <josh@stack.nl>
To: Brian Gerst <bgerst@didntduck.org>
Cc: Andrew Morton <akpm@zip.com.au>, <linux-kernel@vger.kernel.org>,
Linus Torvalds <torvalds@transmeta.com>
Subject: Re: [patch] ext2_fill_super breakage
Date: Thu, 28 Mar 2002 14:50:17 +0100 (CET) [thread overview]
Message-ID: <20020328144259.A6796-100000@snail.stack.nl> (raw)
In-Reply-To: <3CA31BF6.7030609@didntduck.org>
On Thu, 28 Mar 2002, Brian Gerst wrote:
> Andrew Morton wrote:
> > Lesson for the day: this is one of the reasons why this idiom:
> > some_type *p;
> > p = malloc(sizeof(*p));
> > ...
> > memset(p, 0, sizeof(*p));
> > is preferable to
> > some_type *p;
> > p = malloc(sizeof(some_type));
> > ...
> > memset(p, 0, sizeof(some_type));
> I'm not sure I follow you here. Compiling this code (gcc 2.96):
....
It is not about what comes out of the compiler, it is about the fact that
in the second case, when some_type becomes another_type, you have to
replace some_type at 3 locations, easy to forget one. In the first case,
your compiler checks what the size of your variable is, the memset will
never fill beyond the end of your allocated memory.
It is about preventing patching again and again for someone forgot to use
:s/something/anotherthing/g. Besides, the code looks much better imho.
Jos
next prev parent reply other threads:[~2002-03-28 13:50 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-03-28 7:30 [patch] ext2_fill_super breakage Andrew Morton
2002-03-28 13:34 ` Brian Gerst
2002-03-28 13:46 ` Rob Landley
2002-03-28 13:50 ` Jos Hulzink [this message]
2002-03-28 17:26 ` Bill Davidsen
2002-03-28 17:27 ` Andrew Morton
2002-03-28 18:13 ` Brian Gerst
2002-03-28 14:21 ` Alexander Viro
2002-03-28 14:36 ` Nikita Danilov
2002-03-28 14:48 ` Alexander Viro
2002-03-28 14:51 ` Nikita Danilov
2002-03-28 15:20 ` Alexander Viro
2002-03-28 14:50 ` Arjan van de Ven
2002-03-28 15:01 ` Nikita Danilov
2002-03-28 17:45 ` Andrew Morton
2002-03-28 23:51 ` Alexander Viro
2002-03-29 0:25 ` Andrew Morton
2002-03-29 5:14 ` Andreas Dilger
2002-03-29 8:06 ` Guest section DW
2002-03-29 15:45 ` Bill Davidsen
2002-03-29 0:42 ` Bill Davidsen
2002-03-28 22:45 ` Brian Gerst
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=20020328144259.A6796-100000@snail.stack.nl \
--to=josh@stack.nl \
--cc=akpm@zip.com.au \
--cc=bgerst@didntduck.org \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@transmeta.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox