fs/xfs: Correct redundant test
authorJulia Lawall <julia@diku.dk>
Mon, 27 Jul 2009 16:15:25 +0000 (18:15 +0200)
committerFelix Blyakher <felixb@sgi.com>
Fri, 31 Jul 2009 05:00:47 +0000 (00:00 -0500)
commitede58517ca93277547a0d054728c352618212d85
treec719d90f95bf03e2e7fe69f32dfe3c7d584caa50
parent5c04c78afba4805846519f29f0b55ac8759e0d48
fs/xfs: Correct redundant test

bp was tested for NULL a few lines before, followed by a return, and there
is no intervening modification of its value.

A simplified version of the semantic match that finds this problem is as
follows: (http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@r exists@
local idexpression x;
expression E;
position p1,p2;
@@

if (x == NULL || ...) { ... when forall
   return ...; }
... when != \(x=E\|x--\|x++\|--x\|++x\|x-=E\|x+=E\|x|=E\|x&=E\|&x\)
(
*x == NULL
|
*x != NULL
)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Acked-by: Felix Blyakher <felixb@sgi.com>
Signed-off-by: Felix Blyakher <felixb@sgi.com>
fs/xfs/xfs_trans_buf.c