From: Vasily Averin We need to free i2o msg in case of error. Signed-off-by: Vasily Averin Acked-by: Alan Cox Cc: Markus Lidel Acked-by: Kirill Korotaev Signed-off-by: Andrew Morton --- drivers/message/i2o/exec-osm.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletion(-) diff -puN drivers/message/i2o/exec-osm.c~i2o-message-leak-in-i2o_msg_post_wait_mem drivers/message/i2o/exec-osm.c --- a/drivers/message/i2o/exec-osm.c~i2o-message-leak-in-i2o_msg_post_wait_mem +++ a/drivers/message/i2o/exec-osm.c @@ -131,8 +131,10 @@ int i2o_msg_post_wait_mem(struct i2o_con int rc = 0; wait = i2o_exec_wait_alloc(); - if (!wait) + if (!wait) { + i2o_msg_nop(c, msg); return -ENOMEM; + } if (tcntxt == 0xffffffff) tcntxt = 0x80000000; _