diff options
author | Eric Van Hensbergen <ericvh@gmail.com> | 2011-07-13 19:12:18 -0500 |
---|---|---|
committer | Eric Van Hensbergen <ericvh@gmail.com> | 2011-07-23 09:32:29 -0500 |
commit | b85f7d92d7bd7e3298159e8b1eed8cb8cbbb0348 (patch) | |
tree | 3abd3117770a4cca95e442d248d4da187ad8aa7d /net/9p | |
parent | bbd9d6f7fbb0305c9a592bf05a32e87eb364a4ff (diff) | |
download | lwn-b85f7d92d7bd7e3298159e8b1eed8cb8cbbb0348.tar.gz lwn-b85f7d92d7bd7e3298159e8b1eed8cb8cbbb0348.zip |
net/9p: fix client code to fail more gracefully on protocol error
There was a BUG_ON to protect against a bad id which could be dealt with
more gracefully.
Reported-by: Natalie Orlin <norlin@us.ibm.com>
Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
Diffstat (limited to 'net/9p')
-rw-r--r-- | net/9p/client.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/9p/client.c b/net/9p/client.c index 9e3b0e640da1..81e667b6bbbd 100644 --- a/net/9p/client.c +++ b/net/9p/client.c @@ -280,7 +280,8 @@ struct p9_req_t *p9_tag_lookup(struct p9_client *c, u16 tag) * buffer to read the data into */ tag++; - BUG_ON(tag >= c->max_tag); + if(tag >= c->max_tag) + return NULL; row = tag / P9_ROW_MAXTAG; col = tag % P9_ROW_MAXTAG; |