diff options
author | Joern Engel <joern@logfs.org> | 2011-10-26 01:08:43 -0400 |
---|---|---|
committer | Nicholas Bellinger <nab@linux-iscsi.org> | 2011-10-26 21:00:11 -0400 |
commit | 80ccbc8e00f7001d79dd503c2781487906b98611 (patch) | |
tree | 156726945115c87aa7f95f4c09f3ae53ceced6cc /drivers/target | |
parent | f147abb475ab47ce620cf3d18de5b3192c9fa7ed (diff) |
target: Fix incorrect se_cmd assignment in core_tmr_drain_tmr_list
This patch fixes a bug in core_tmr_drain_tmr_list() where drain_tmr_list
was using the wrong se_tmr_req for cmd assignment due to a typo during the
LUN_RESET re-org. This was resulting in general protection faults while
using the leftover bogus *tmr_p pointer from list_for_each_entry_safe().
Signed-off-by: Joern Engel <joern@logfs.org>
Cc: Joern Engel <joern@logfs.org>
Cc: stable@kernel.org
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Diffstat (limited to 'drivers/target')
-rw-r--r-- | drivers/target/target_core_tmr.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/target/target_core_tmr.c b/drivers/target/target_core_tmr.c index 570b144a1edb..87d8e958b4ce 100644 --- a/drivers/target/target_core_tmr.c +++ b/drivers/target/target_core_tmr.c | |||
@@ -154,7 +154,7 @@ static void core_tmr_drain_tmr_list( | |||
154 | while (!list_empty(&drain_tmr_list)) { | 154 | while (!list_empty(&drain_tmr_list)) { |
155 | tmr = list_entry(drain_tmr_list.next, struct se_tmr_req, tmr_list); | 155 | tmr = list_entry(drain_tmr_list.next, struct se_tmr_req, tmr_list); |
156 | list_del(&tmr->tmr_list); | 156 | list_del(&tmr->tmr_list); |
157 | cmd = tmr_p->task_cmd; | 157 | cmd = tmr->task_cmd; |
158 | 158 | ||
159 | pr_debug("LUN_RESET: %s releasing TMR %p Function: 0x%02x," | 159 | pr_debug("LUN_RESET: %s releasing TMR %p Function: 0x%02x," |
160 | " Response: 0x%02x, t_state: %d\n", | 160 | " Response: 0x%02x, t_state: %d\n", |