diff options
Diffstat (limited to 'net/9p')
-rw-r--r-- | net/9p/client.c | 13 | ||||
-rw-r--r-- | net/9p/trans_xen.c | 1 |
2 files changed, 5 insertions, 9 deletions
diff --git a/net/9p/client.c b/net/9p/client.c index 21e6df1cc70f..18c5271910dc 100644 --- a/net/9p/client.c +++ b/net/9p/client.c @@ -198,8 +198,6 @@ static int parse_opts(char *opts, struct p9_client *clnt) pr_info("Could not find request transport: %s\n", s); ret = -EINVAL; - kfree(s); - goto free_and_return; } kfree(s); break; @@ -214,13 +212,12 @@ static int parse_opts(char *opts, struct p9_client *clnt) "problem allocating copy of version arg\n"); goto free_and_return; } - ret = get_protocol_version(s); - if (ret == -EINVAL) { - kfree(s); - goto free_and_return; - } + r = get_protocol_version(s); + if (r < 0) + ret = r; + else + clnt->proto_version = r; kfree(s); - clnt->proto_version = ret; break; default: continue; diff --git a/net/9p/trans_xen.c b/net/9p/trans_xen.c index 0f19960390a6..2e2b8bca54f3 100644 --- a/net/9p/trans_xen.c +++ b/net/9p/trans_xen.c @@ -38,7 +38,6 @@ #include <linux/module.h> #include <linux/spinlock.h> -#include <linux/rwlock.h> #include <net/9p/9p.h> #include <net/9p/client.h> #include <net/9p/transport.h> |