[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <a4e6962a0907141129r7c7fd19jb6da6ff229433a13@mail.gmail.com>
Date: Tue, 14 Jul 2009 13:29:57 -0500
From: Eric Van Hensbergen <ericvh@...il.com>
To: Abhishek Kulkarni <adkulkar@...il.iu.edu>
Cc: linux-kernel@...r.kernel.org, v9fs-developer@...ts.sourceforge.net,
netdev@...r.kernel.org
Subject: Re: [PATCH] [net/9p] Possible regression in p9_client_stat
applied v9fs-devel
On Mon, Jul 13, 2009 at 8:49 AM, Abhishek Kulkarni<adkulkar@...il.iu.edu> wrote:
> Fix a possible regression with p9_client_stat where it can try to kfree an ERR_PTR
> after an erroneous p9pdu_readf. Also remove an unnecessary data buffer increment
> in p9_client_read.
>
> Signed-off-by: Abhishek Kulkarni <adkulkar@...il.iu.edu>
> ---
> :100644 100644 dd43a82... cc25e63... M net/9p/client.c
> net/9p/client.c | 7 ++-----
> 1 files changed, 2 insertions(+), 5 deletions(-)
>
> diff --git a/net/9p/client.c b/net/9p/client.c
> index dd43a82..cc25e63 100644
> --- a/net/9p/client.c
> +++ b/net/9p/client.c
> @@ -1098,7 +1098,6 @@ p9_client_read(struct p9_fid *fid, char *data, char __user *udata, u64 offset,
>
> if (data) {
> memmove(data, dataptr, count);
> - data += count;
> }
>
> if (udata) {
> @@ -1192,9 +1191,9 @@ struct p9_wstat *p9_client_stat(struct p9_fid *fid)
>
> err = p9pdu_readf(req->rc, clnt->dotu, "wS", &ignored, ret);
> if (err) {
> - ret = ERR_PTR(err);
> p9pdu_dump(1, req->rc);
> - goto free_and_error;
> + p9_free_req(clnt, req);
> + goto error;
> }
>
> P9_DPRINTK(P9_DEBUG_9P,
> @@ -1211,8 +1210,6 @@ struct p9_wstat *p9_client_stat(struct p9_fid *fid)
> p9_free_req(clnt, req);
> return ret;
>
> -free_and_error:
> - p9_free_req(clnt, req);
> error:
> kfree(ret);
> return ERR_PTR(err);
> --
> 1.6.0.4
>
>
--
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