Re: [PATCH] Check for Null return of function of affs_bread in function affs_truncate

From: Thomas Gleixner
Date: Fri Jun 20 2014 - 19:59:28 EST


On Fri, 20 Jun 2014, Nick Krause wrote:

> Ok that's fine I would return as if it's a NULL the other parts of the
> function can't continue.
> Nick
>
> On Thu, Jun 19, 2014 at 1:21 AM, Dan Carpenter <dan.carpenter@xxxxxxxxxx> wrote:
> > On Wed, Jun 18, 2014 at 06:08:05PM -0400, Nicholas Krause wrote:
> >> Signed-off-by: Nicholas Krause <xerofoify@xxxxxxxxx>
> >> ---
> >> fs/affs/file.c | 2 ++
> >> 1 file changed, 2 insertions(+)
> >>
> >> diff --git a/fs/affs/file.c b/fs/affs/file.c
> >> index a7fe57d..f26482d 100644
> >> --- a/fs/affs/file.c
> >> +++ b/fs/affs/file.c
> >> @@ -923,6 +923,8 @@ affs_truncate(struct inode *inode)
> >>
> >> while (ext_key) {
> >> ext_bh = affs_bread(sb, ext_key);
> >> + if (!ext_bh)
> >> + return;
> >
> > The problem is that we don't know if we should return here or break
> > here. If you don't understand the code, then it's best to just leave it
> > alone.

Dan, what kind of attitude is that?

Nick certainly found an issue where a possible NULL return from
affs_bread() can cause havoc.

Do YOU understand that code?

If yes, you better explain, WHY Nicks finding is a false positive
instead of just telling him off in a very inpolite way.

If not, you better refrain from telling a reporter that he does not
understand the code and should stay away.

You clearly stated that you do not understand it either:

> > The problem is that we don't know if we should return here or break
> > here.

The problem here is that proceeding with a known NULL pointer is wrong
to begin with. It does not matter at all whether break or return is
the proper thing to do. What matters is that proceeding with a NULL
pointer is wrong to begin with, no matter what.

So either explain why this is a non issue and the NULL pointer return
cannot happen or shut up and try to find a proper solution for that
"return" vs. "break" issue.

Thanks,

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