From: BearBabyLiu Date: Wed, 21 Sep 2016 02:09:22 +0000 (+0800) Subject: Fix coverity defects X-Git-Tag: zfs-0.7.0-rc2~114 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=609603a5d3356c2c69c926038eee6755e0183d27;p=zfs Fix coverity defects coverity scan CID:147504 Type: Explicit null dereferenced Reason: passing null pointer dl to zfs_dirent_unlock Reviewed-by: Brian Behlendorf Signed-off-by: BearBabyLiu Closes #5131 --- diff --git a/module/zfs/zfs_vnops.c b/module/zfs/zfs_vnops.c index 405b37c19..796cd1e34 100644 --- a/module/zfs/zfs_vnops.c +++ b/module/zfs/zfs_vnops.c @@ -1470,8 +1470,10 @@ top: if (S_ISREG(ZTOI(zp)->i_mode) && (vap->va_mask & ATTR_SIZE) && (vap->va_size == 0)) { /* we can't hold any locks when calling zfs_freesp() */ - zfs_dirent_unlock(dl); - dl = NULL; + if (dl) { + zfs_dirent_unlock(dl); + dl = NULL; + } error = zfs_freesp(zp, 0, 0, mode, TRUE); } }