[PATCH] ubifs: Fix xattr generic handler usage

Dongsheng Yang dongsheng081251 at gmail.com
Wed Aug 17 05:06:52 PDT 2016


On 08/01/2016 03:42 AM, Richard Weinberger wrote:
> UBIFS uses full names to work with xattrs, therefore we have to use
> xattr_full_name() to obtain the xattr prefix as string.
>
> Cc: <stable at vger.kernel.org>
> Cc: Andreas Gruenbacher <agruenba at redhat.com>
> Fixes: 2b88fc21ca ("ubifs: Switch to generic xattr handlers")
> Signed-off-by: Richard Weinberger <richard at nod.at>
Tested-by: Dongsheng Yang <dongsheng081251 at gmail.com>

It make ubifs passes generic/020 in xfstests.

Yang
> ---
>   fs/ubifs/xattr.c | 5 ++++-
>   1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/fs/ubifs/xattr.c b/fs/ubifs/xattr.c
> index b5fc279..c63710f 100644
> --- a/fs/ubifs/xattr.c
> +++ b/fs/ubifs/xattr.c
> @@ -575,7 +575,8 @@ static int ubifs_xattr_get(const struct xattr_handler *handler,
>   	dbg_gen("xattr '%s', ino %lu ('%pd'), buf size %zd", name,
>   		inode->i_ino, dentry, size);
>   
> -	return  __ubifs_getxattr(inode, name, buffer, size);
> +	name = xattr_full_name(handler, name);
> +	return __ubifs_getxattr(inode, name, buffer, size);
>   }
>   
>   static int ubifs_xattr_set(const struct xattr_handler *handler,
> @@ -586,6 +587,8 @@ static int ubifs_xattr_set(const struct xattr_handler *handler,
>   	dbg_gen("xattr '%s', host ino %lu ('%pd'), size %zd",
>   		name, inode->i_ino, dentry, size);
>   
> +	name = xattr_full_name(handler, name);
> +
>   	if (value)
>   		return __ubifs_setxattr(inode, name, value, size, flags);
>   	else




More information about the linux-mtd mailing list