diff options
| author | Nicholas Bellinger <nab@linux-iscsi.org> | 2014-06-17 18:23:03 -0400 |
|---|---|---|
| committer | Nicholas Bellinger <nab@linux-iscsi.org> | 2014-06-26 23:56:49 -0400 |
| commit | b43f1886e4d3ea3f68665eaea96526ccdd53741d (patch) | |
| tree | 09b7cedc3ea62bd601987ad5172051d349d32c9d | |
| parent | 683497566d48f86e04d026de1ee658dd74fc1077 (diff) | |
tcm_loop: Fix memory leak in tcm_loop_submission_work error path
This patch fixes a tcm_loop_cmd descriptor memory leak in the
tcm_loop_submission_work() error path, and would result in
warnings about leaked tcm_loop_cmd_cache objects at module
unload time.
Go ahead and invoke kmem_cache_free() to release tl_cmd back to
tcm_loop_cmd_cache before calling sc->scsi_done().
Reported-by: Sebastian Herbszt <herbszt@gmx.de>
Tested-by: Sebastian Herbszt <herbszt@gmx.de>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
| -rw-r--r-- | drivers/target/loopback/tcm_loop.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/target/loopback/tcm_loop.c b/drivers/target/loopback/tcm_loop.c index 6d2f37578b29..8c64b8776a96 100644 --- a/drivers/target/loopback/tcm_loop.c +++ b/drivers/target/loopback/tcm_loop.c | |||
| @@ -239,6 +239,7 @@ static void tcm_loop_submission_work(struct work_struct *work) | |||
| 239 | return; | 239 | return; |
| 240 | 240 | ||
| 241 | out_done: | 241 | out_done: |
| 242 | kmem_cache_free(tcm_loop_cmd_cache, tl_cmd); | ||
| 242 | sc->scsi_done(sc); | 243 | sc->scsi_done(sc); |
| 243 | return; | 244 | return; |
| 244 | } | 245 | } |
