diff options
author | Vasily Averin <vvs@sw.ru> | 2007-07-17 07:04:26 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-17 13:23:06 -0400 |
commit | 3d0fd333a1c2659fb0495894090d1146b239fd9a (patch) | |
tree | e282a0181c660ede2407b0e4d0dfc1b1d306e0ae /drivers/message/i2o/exec-osm.c | |
parent | 010904cbed3db3464213fbc602802cc6f53e56e1 (diff) |
i2o message leak in i2o_msg_post_wait_mem()
We need to free i2o msg in case of error.
Signed-off-by: Vasily Averin <vvs@sw.ru>
Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Markus Lidel <Markus.Lidel@shadowconnect.com>
Acked-by: Kirill Korotaev <dev@openvz.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/message/i2o/exec-osm.c')
-rw-r--r-- | drivers/message/i2o/exec-osm.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/message/i2o/exec-osm.c b/drivers/message/i2o/exec-osm.c index c13b9321e7ab..809d4b63c0b3 100644 --- a/drivers/message/i2o/exec-osm.c +++ b/drivers/message/i2o/exec-osm.c | |||
@@ -131,8 +131,10 @@ int i2o_msg_post_wait_mem(struct i2o_controller *c, struct i2o_message *msg, | |||
131 | int rc = 0; | 131 | int rc = 0; |
132 | 132 | ||
133 | wait = i2o_exec_wait_alloc(); | 133 | wait = i2o_exec_wait_alloc(); |
134 | if (!wait) | 134 | if (!wait) { |
135 | i2o_msg_nop(c, msg); | ||
135 | return -ENOMEM; | 136 | return -ENOMEM; |
137 | } | ||
136 | 138 | ||
137 | if (tcntxt == 0xffffffff) | 139 | if (tcntxt == 0xffffffff) |
138 | tcntxt = 0x80000000; | 140 | tcntxt = 0x80000000; |