Re: [PATCH] video/saa7164: Fix sparse warning: Using plain integer as NULL pointer

Peter Hüwe
2011-01-25T22:54:30Z

Am Dienstag 25 Januar 2011, 23:20:44 schrieb Julia Lawall:
> On Tue, 25 Jan 2011, Peter Huewe wrote:
> > This patch fixes the warning "Using plain integer as NULL pointer",
> > generated by sparse, by replacing the offending 0s with NULL.
>
> I recall (a number of years ago) being told that for things like kmalloc,
> the proper test was !x, not x = NULL.
>
> julia
>

Hi Julia,

thanks for your input.
So do I understand you correctly if I say
if(!x) is better than if(x=NULL) in any case?

Or only for the kmalloc family?

Do you remember the reason why !x should be preferred?

In Documentation/CodingStyle , Chapter 7: Centralized exiting of functions
there is a function fun with looks like this:
int fun(int a)
{
int result = 0;
char *buffer = kmalloc(SIZE);

if (buffer = NULL)
return -ENOMEM;

if (condition1) {
while (loop1) {
...
}
result = 1;
goto out;
}
...
out:
kfree(buffer);
return result;
}

--> So if (buffer = NULL) is in the official CodingStyle - maybe we should
add a paragraph there as well ;)

Don't get me wrong, I just want to learn ;)

Thanks,
Peter