On Thu, Aug 24, 2017 at 02:03:57PM +0300, Dan Carpenter wrote:
> Hello Bob Peterson,
> 
> The patch 9bfef7554e20: "GFS2: Withdraw for IO errors writing to the
> journal or statfs" from Aug 16, 2017, leads to the following static
> checker warning:
> 
>       fs/gfs2/super.c:949 gfs2_sync_fs()
>       error: we previously assumed 'sdp' could be null (see line 947)
> 
> fs/gfs2/super.c
>    942  static int gfs2_sync_fs(struct super_block *sb, int wait)
>    943  {
>    944          struct gfs2_sbd *sdp = sb->s_fs_info;
>    945  
>    946          gfs2_quota_sync(sb, -1);
>    947          if (wait && sdp)
>                             ^^^
> Existing code checks for NULL.

The NULL check seemed odd to me, and other ->sync_fs implementations don't 
check it, but digging through the history there's a reason it was added (see 
9171f5a ). That said, I can't see the quota_off code path that it was guarding 
against any more, so perhaps it is no longer required.

Andy

> 
>    948                  gfs2_log_flush(sdp, NULL, NORMAL_FLUSH);
>    949          return sdp->sd_log_error;
>                        ^^^^^^^^^^^^^^^^^
> Patch adds unchecked dereference.

Reply via email to