summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorColin Ian King <colin.king@canonical.com>2019-11-05 18:51:08 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-11-07 16:29:17 +0100
commit94fed404109d301312bbdf73d7007976ffca3482 (patch)
tree256850638a0729067d6f2f167322c044545b42d1
parentstaging: vboxsf: Remove unused including <linux/version.h> (diff)
downloadlinux-94fed404109d301312bbdf73d7007976ffca3482.tar.xz
linux-94fed404109d301312bbdf73d7007976ffca3482.zip
staging: vboxsf: fix dereference of pointer dentry before it is null checked
Currently the pointer dentry is being dereferenced before it is being null checked. Fix this by only dereferencing dentry once we know it is not null. Addresses-Coverity: ("Dereference before null check") Fixes: df4028658f9d ("staging: Add VirtualBox guest shared folder (vboxsf) support") Signed-off-by: Colin Ian King <colin.king@canonical.com> Link: https://lore.kernel.org/r/20191105175108.79824-1-colin.king@canonical.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/staging/vboxsf/utils.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/staging/vboxsf/utils.c b/drivers/staging/vboxsf/utils.c
index 1870b69c824e..34a49e6f74fc 100644
--- a/drivers/staging/vboxsf/utils.c
+++ b/drivers/staging/vboxsf/utils.c
@@ -174,7 +174,7 @@ int vboxsf_stat_dentry(struct dentry *dentry, struct shfl_fsobjinfo *info)
int vboxsf_inode_revalidate(struct dentry *dentry)
{
- struct vboxsf_sbi *sbi = VBOXSF_SBI(dentry->d_sb);
+ struct vboxsf_sbi *sbi;
struct vboxsf_inode *sf_i;
struct shfl_fsobjinfo info;
struct timespec64 prev_mtime;
@@ -187,6 +187,7 @@ int vboxsf_inode_revalidate(struct dentry *dentry)
inode = d_inode(dentry);
prev_mtime = inode->i_mtime;
sf_i = VBOXSF_I(inode);
+ sbi = VBOXSF_SBI(dentry->d_sb);
if (!sf_i->force_restat) {
if (time_before(jiffies, dentry->d_time + sbi->o.ttl))
return 0;