mirror of https://gitee.com/openkylin/linux.git
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>
This commit is contained in:
parent
eb00457d62
commit
a0f7bfd342
|
@ -307,7 +307,7 @@ xfs_trans_read_buf(
|
|||
return (flags & XFS_BUF_TRYLOCK) ?
|
||||
EAGAIN : XFS_ERROR(ENOMEM);
|
||||
|
||||
if ((bp != NULL) && (XFS_BUF_GETERROR(bp) != 0)) {
|
||||
if (XFS_BUF_GETERROR(bp) != 0) {
|
||||
xfs_ioerror_alert("xfs_trans_read_buf", mp,
|
||||
bp, blkno);
|
||||
error = XFS_BUF_GETERROR(bp);
|
||||
|
@ -315,7 +315,7 @@ xfs_trans_read_buf(
|
|||
return error;
|
||||
}
|
||||
#ifdef DEBUG
|
||||
if (xfs_do_error && (bp != NULL)) {
|
||||
if (xfs_do_error) {
|
||||
if (xfs_error_target == target) {
|
||||
if (((xfs_req_num++) % xfs_error_mod) == 0) {
|
||||
xfs_buf_relse(bp);
|
||||
|
|
Loading…
Reference in New Issue