Re: [Patch] Possible NULL pointer dereference in fs/configfs/dir.c

From: Adrian Bunk
Date: Sat Mar 25 2006 - 11:57:36 EST


On Thu, Mar 23, 2006 at 12:36:54AM +0100, Eric Sesterhenn wrote:
>...
> On Wed, 2006-03-22 at 15:27 -0800, Joel Becker wrote:
>...
> > group cannot be null here, we aren't called any other way. So
> > while you are correct that the code below is needed in the presence of a
> > NULL group, really the "if (group" isn't necessary, just the "if
> > (group->default_groups)". I could even BUG_ON() if you'd like.
>
> I would then propose the following patch, so the check can be
> removed for people who like small kernels. I dont think gcc notices
> that all callers use non-NULL values and optimizes it away.
>
> --- linux-2.6.16/fs/configfs/dir.c.orig 2006-03-23 00:31:16.000000000 +0100
> +++ linux-2.6.16/fs/configfs/dir.c 2006-03-23 00:32:07.000000000 +0100
> @@ -504,7 +504,9 @@ static int populate_groups(struct config
> int ret = 0;
> int i;
>
> - if (group && group->default_groups) {
> + BUG_ON(!group); /* group == NULL is not allowed */
> +
> + if (group->default_groups) {
>...

Why do we need a BUG_ON() if we already got an Oops?
Simply remove the check.

cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed

-
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/