diff options
author | Aristeu Rozanski <aris@redhat.com> | 2012-09-12 16:31:13 +0200 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2012-09-13 20:10:49 +0200 |
commit | b9d6cfdeaf67cc34cdfd53ab234358dd2910a0f4 (patch) | |
tree | 15532d5a553ca1d3eec6caa15d8242ec3576d1d4 /fs/xattr.c | |
parent | fs: add missing documentation to simple_xattr functions (diff) | |
download | linux-b9d6cfdeaf67cc34cdfd53ab234358dd2910a0f4.tar.xz linux-b9d6cfdeaf67cc34cdfd53ab234358dd2910a0f4.zip |
xattr: mark variable as uninitialized to make both gcc and smatch happy
new_xattr in __simple_xattr_set() is only initialized with a valid
pointer if value is not NULL, which only happens if this function is
called directly with the intention to remove an existing extended
attribute. Even being safe to be this way, smatch warns about possible
NULL dereference. Dan Carpenter suggested using uninitialized_var()
which will make both gcc and smatch happy.
Cc: Fengguang Wu <fengguang.wu@intel.com>
Cc: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Aristeu Rozanski <aris@redhat.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'fs/xattr.c')
-rw-r--r-- | fs/xattr.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/xattr.c b/fs/xattr.c index f053c1135d0f..014f11321fd9 100644 --- a/fs/xattr.c +++ b/fs/xattr.c @@ -845,7 +845,7 @@ static int __simple_xattr_set(struct simple_xattrs *xattrs, const char *name, const void *value, size_t size, int flags) { struct simple_xattr *xattr; - struct simple_xattr *new_xattr = NULL; + struct simple_xattr *uninitialized_var(new_xattr); int err = 0; /* value == NULL means remove */ |