On Mon, 26 Nov 2007, Joonwoo Park wrote: > 2007/11/26, Robert P. J. Day <[EMAIL PROTECTED]>: > > 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 [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/