iscsi-target: Fix iscsit_alloc_buffs() failure cases
authorNicholas Bellinger <nab@linux-iscsi.org>
Fri, 24 Feb 2012 01:28:43 +0000 (17:28 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 2 Apr 2012 16:52:44 +0000 (09:52 -0700)
commit05ea4968dcc95650e2d1e1b67102018cdbd80e65
treefc56b9c14f51864b6f14c8549b7cb8fb04bfc822
parentbb9ed4f099c534078357b549b53749a55dfd1c97
iscsi-target: Fix iscsit_alloc_buffs() failure cases

commit d335e6054db616bce3f040e659fa38440518ad1d upstream.

Make iscsit_alloc_buffs() failure case for page_alloc_failed use correct
__free_page() SGL pointer, and return -ENOMEM for iscsit_allocate_iovecs
failure to push se_cmd->t_mem_sg release into iscsit_release_cmd()
callback during iscsit_add_reject_from_cmd() connection reset.

Also drop cmd->t_mem_sg = NULL assignment from page_alloc_failed
failure case.

Reported-by: Roland Dreier <roland@purestorage.com>
Cc: Andy Grover <agrover@redhat.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/target/iscsi/iscsi_target.c