[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.LFD.0.9999.0711260523420.12603@localhost.localdomain>
Date: Mon, 26 Nov 2007 05:29:35 -0500 (EST)
From: "Robert P. J. Day" <rpjday@...shcourse.ca>
To: Joonwoo Park <joonwpark81@...il.com>
cc: netdev@...r.kernel.org, chas@....nrl.navy.mil,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 4/4] atm/ambassador: kmalloc + memset conversion to
kzalloc
On Mon, 26 Nov 2007, Joonwoo Park wrote:
> 2007/11/26, Robert P. J. Day <rpjday@...shcourse.ca>:
> > i'm not sure the above is a safe thing to do, as you're zeroing that
> > area, then making a function call and assuming, upon entry to the
> > function call, that the caller has done the right thing. i don't see
> > how you can count on that, depending on who else might want to call
> > that routine and whether they get sloppy about it. unless you're
> > prepared to guarantee that there will never be another call to
> > setup_dev() from elsewhere.
>
> Thanks for your response. But setup_dev is static function and only
> amb_init calls it.
i realized that. but all you can say is that only amb_init() calls
setup_dev() *currently*. when you're not looking, someone else might
(for whatever reason) call setup_dev() from elsewhere, and *that* call
might not zero that memory area.
IMHO, the only safe transforms of kmalloc+memset -> kzalloc are those
in which the flow of control is unmistakable and invariant. splitting
that across a function call seems like a dangerous thing to do.
(except, of course, in the case, where the kzalloc() is added inside
the function -- then all callers are entitled to simplify *their*
code. but that's different.)
in any event, i just thought i'd point it out. if you're absolutely
sure there will never be another call to setup_dev() from somewhere
else, then, yes, it's safe.
rday
========================================================================
Robert P. J. Day
Linux Consulting, Training and Annoying Kernel Pedantry
Waterloo, Ontario, CANADA
http://crashcourse.ca
========================================================================
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists