On 02/07/16 09:05, Salah Triki wrote: > The calls to brelse are useless since dbl_indir_block and indir_block > are NULL. > > Signed-off-by: Salah Triki <[email protected]> > --- > fs/befs/datastream.c | 2 -- > 1 file changed, 2 deletions(-) > > diff --git a/fs/befs/datastream.c b/fs/befs/datastream.c > index e224b9a..b68b6f9 100644 > --- a/fs/befs/datastream.c > +++ b/fs/befs/datastream.c > @@ -471,7 +471,6 @@ befs_find_brun_dblindirect(struct super_block *sb, > (unsigned long) > iaddr2blockno(sb, &data->double_indirect) + > dbl_which_block); > - brelse(dbl_indir_block); > return BEFS_ERR; > } > > @@ -496,7 +495,6 @@ befs_find_brun_dblindirect(struct super_block *sb, > befs_error(sb, "%s couldn't read the indirect block " > "at blockno %lu", __func__, (unsigned long) > iaddr2blockno(sb, &indir_run) + which_block); > - brelse(indir_block); > return BEFS_ERR; > } > >
Great catch! This went unnoticed because brelse() checks if the buffer_head is NULL before decrementing the reference count. Which in these two cases they clearly are NULL. Acked-by: Luis de Bethencourt <[email protected]> Thanks! Luis

