If a filesystem uses simple_xattr to support user extended attributes,
LTP setxattr01 and xfstests generic/062 fail with "Cannot allocate memory":
simple_xattr_alloc()'s wrap-around test mistakenly excludes values of zero
size.  Fix that off-by-one (but apparently no filesystem needs them yet).

Signed-off-by: Hugh Dickins <[email protected]>
---

 fs/xattr.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- 3.16-rc5/fs/xattr.c 2013-02-18 15:58:34.000000000 -0800
+++ linux/fs/xattr.c    2014-07-16 12:47:10.640004412 -0700
@@ -843,7 +843,7 @@ struct simple_xattr *simple_xattr_alloc(
 
        /* wrap around? */
        len = sizeof(*new_xattr) + size;
-       if (len <= sizeof(*new_xattr))
+       if (len < sizeof(*new_xattr))
                return NULL;
 
        new_xattr = kmalloc(len, GFP_KERNEL);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to