Re: kfree(NULL)

From: Nick Piggin
Date: Sat Apr 22 2006 - 15:26:06 EST


Hua Zhong wrote:
It can reduce readability of the code [unless it is used in error path simplification, kfree(something) usually suggests kfree-an-object].


Consistency in coding style improves readability. Redundancy reduces readability.

The interface is simple and clear, and has been documented for decades, that is kfree (and free) accepts NULL. There is no ambiguity
here.

If you think "if (obj) kfree (obj);" is more readable than "kfree(obj);", fix the API to enforce it.

But if the kernel tree is full of "some caller checks NULL while others not", I hardly see it as readable. It'd just be confusing.


I don't actually like kfree(NULL) any time except error paths. It is subjective, not crazy talk.


Documented interface is not subjective.

That's great. I don't know quite how to reply, or even if I should
if you don't read what I write.

--
SUSE Labs, Novell Inc.
Send instant messages to your online friends http://au.messenger.yahoo.com -
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/