diff --git a/fs/ecryptfs/inode.c b/fs/ecryptfs/inode.c
index a27121d35b231c76e4de81f87248fd6e5c7375f5..7e405396dc05400f3e9a1c440f718e18e40d59b5 100644
--- a/fs/ecryptfs/inode.c
+++ b/fs/ecryptfs/inode.c
@@ -1040,7 +1040,7 @@ ecryptfs_setxattr(struct dentry *dentry, const char *name, const void *value,
 	}
 
 	rc = vfs_setxattr(lower_dentry, name, value, size, flags);
-	if (!rc)
+	if (!rc && dentry->d_inode)
 		fsstack_copy_attr_all(dentry->d_inode, lower_dentry->d_inode);
 out:
 	return rc;