tcm_fc: Fix ft_send_tm LUN lookup OOPs
authorKiran Patil <kiran.patil@intel.com>
Wed, 22 Jun 2011 23:30:22 +0000 (16:30 -0700)
committerNicholas Bellinger <nab@linux-iscsi.org>
Fri, 24 Jun 2011 00:09:15 +0000 (00:09 +0000)
commit61db952713a8bc1b18515db3f2eac354ec8990bd
tree94495bc24648a2990b39baf8c865fe0c36ccc9bf
parent60d645a4e9e7e7ddc20e534fea82aa4e6947f911
tcm_fc: Fix ft_send_tm LUN lookup OOPs

This patch fixes a bug in ft_send_tm() that was incorrectly calling
ft_get_lun_for_cmd() -> transport_get_lun_for_cmd(), instead of using
transport_get_lun_for_tmr() for the proper struct se_lun lookup
that was triggering an OOPs in the se_cmd->tmr_req failure path.

This patch fixes the issue by re-arranging the codepath where
transport_get_lun_for_tmr() is called after tmr request is allocated and
made it available as part of se_cmd.

It also drops the now unnecessary ft_get_lun_for_cmd() unpacking code, and
uses scsilun_to_int() directly ahead of transport_get_lun_for_cmd() and
transport_get_lun_for_tmr() usage.

Signed-off-by: Patil, Kiran <kiran.patil@intel.com>
Signed-off-by: Robert Love <robert.w.love@intel.com>
Signed-off-by: Nicholas A. Bellinger <nab@linux-iscsi.org>
drivers/target/tcm_fc/tcm_fc.h
drivers/target/tcm_fc/tfc_cmd.c