[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAGG-pUQn=RR4U5Qeg1C17hXt56M-yKQtu=ssOj=PQqeoSi+3Vw@mail.gmail.com>
Date: Mon, 21 Oct 2013 18:33:20 -0200
From: Geyslan Gregório Bem <geyslan@...il.com>
To: kernel-br <kernel-br@...glegroups.com>
Cc: "Geyslan G. Bem" <geyslan@...il.com>,
Eric Van Hensbergen <ericvh@...il.com>,
Ron Minnich <rminnich@...dia.gov>,
Latchesar Ionkov <lucho@...kov.net>,
"open list:9P FILE SYSTEM" <v9fs-developer@...ts.sourceforge.net>,
open list <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] 9p: fix return value in case in v9fs_fid_xattr_set()
2013/10/21 Geyslan G. Bem <geyslan@...il.com>:
> In case of error in the p9_client_write, the function v9fs_fid_xattr_set
> should return its negative value, what was never being done.
>
> In case of success it only retuned 0. Now it returns the 'offset'
> variable (write_count total).
>
> Signed-off-by: Geyslan G. Bem <geyslan@...il.com>
> ---
> fs/9p/xattr.c | 10 ++++++----
> 1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/fs/9p/xattr.c b/fs/9p/xattr.c
> index 3c28cdf..04133a1 100644
> --- a/fs/9p/xattr.c
> +++ b/fs/9p/xattr.c
> @@ -138,8 +138,7 @@ int v9fs_fid_xattr_set(struct p9_fid *fid, const char *name,
> if (retval < 0) {
> p9_debug(P9_DEBUG_VFS, "p9_client_xattrcreate failed %d\n",
> retval);
> - p9_client_clunk(fid);
> - return retval;
> + goto err;
> }
> msize = fid->clnt->msize;
> while (value_len) {
> @@ -152,12 +151,15 @@ int v9fs_fid_xattr_set(struct p9_fid *fid, const char *name,
> if (write_count < 0) {
> /* error in xattr write */
> retval = write_count;
> - break;
> + goto err;
> }
> offset += write_count;
> value_len -= write_count;
> }
> - return p9_client_clunk(fid);
> + retval = offset;
> +err:
> + p9_client_clunk(fid);
> + return retval;
> }
>
> ssize_t v9fs_listxattr(struct dentry *dentry, char *buffer, size_t buffer_size)
> --
> 1.8.4
>
Eric,
As you can see, I modified the success return value to the offset
(write_count sum), following the same principle of
v9fs_fid_xattr_get():
http://lxr.free-electrons.com/source/fs/9p/xattr.c#L65
What do you think?
Regards.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists