If i2o_dma_alloc() fails then we don't free any DMA mappings already
allocated.  i2o_cfg_passthru() does not have this bug.

Compile-tested only.

Signed-off-by: Ben Hutchings <[email protected]>
---
 drivers/message/i2o/i2o_config.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/message/i2o/i2o_config.c b/drivers/message/i2o/i2o_config.c
index 04bd3b6..274235d 100644
--- a/drivers/message/i2o/i2o_config.c
+++ b/drivers/message/i2o/i2o_config.c
@@ -630,7 +630,7 @@ static int i2o_cfg_passthru32(struct file *file, unsigned 
cmnd,
                                       "%s:Bad SG element %d - not simple 
(%x)\n",
                                       c->name, i, sg[i].flag_count);
                                rcode = -EINVAL;
-                               goto cleanup;
+                               goto sg_list_cleanup;
                        }
                        sg_size = sg[i].flag_count & 0xffffff;
                        p = &(sg_list[sg_index]);


-- 
Ben Hutchings
Beware of programmers who carry screwdrivers. - Leonard Brandwein

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to