[SCSI] target: Avoid mem leak and needless work in transport_generic_get_mem
authorJesper Juhl <jj@chaosbits.net>
Mon, 14 Mar 2011 11:06:05 +0000 (04:06 -0700)
committerJames Bottomley <James.Bottomley@suse.de>
Wed, 23 Mar 2011 16:36:39 +0000 (11:36 -0500)
commit872105689eeccbcd77377d6a29f69bba3b0cbe3b
tree26070e31d489966f6bc86953f410090df03b2eef
parent5c6cd613196558ba50ba97268b6d225c8d2f56d6
[SCSI] target: Avoid mem leak and needless work in transport_generic_get_mem

In drivers/target/target_core_transport.c::transport_generic_get_mem()
there are a few potential memory leaks in the error paths. This patch
makes sure that we free previously allocated memory when other allocations
fail.  It also moves some work (INIT_LIST_HEAD() and assignment to
se_mem->se_len) below all the allocations so that if something fails we
don't do the work at all.

Signed-off-by: Jesper Juhl <jj@chaosbits.net>
Signed-off-by: Nicholas A. Bellinger <nab@linux-iscsi.org>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
drivers/target/target_core_transport.c