mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-13 14:14:37 +00:00
7e46cf0268
This patch fixes iscsi-target handling of underflow where residual data is causing an OOPs by using the incorrect iscsi_cmd_t->data_length initially assigned in iscsit_allocate_se_cmd(). It resets iscsi_cmd_t->data_length from se_cmd_t->data_length after transport_generic_allocate_tasks() has been invoked in iscsit_handle_scsi_cmd() RX context, and converts iscsi_cmd->residual_count usage to access iscsi_cmd->se_cmd.residual_count to get the proper residual count set by target-core. Reported-by: <lists@internyc.net> Cc: Christoph Hellwig <hch@lst.de> Cc: Andy Grover <agrover@redhat.com> Cc: stable@kernel.org Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org> |
||
---|---|---|
.. | ||
iscsi_target.c | ||
iscsi_target.h | ||
iscsi_target_auth.c | ||
iscsi_target_auth.h | ||
iscsi_target_configfs.c | ||
iscsi_target_configfs.h | ||
iscsi_target_core.h | ||
iscsi_target_datain_values.c | ||
iscsi_target_datain_values.h | ||
iscsi_target_device.c | ||
iscsi_target_device.h | ||
iscsi_target_erl0.c | ||
iscsi_target_erl0.h | ||
iscsi_target_erl1.c | ||
iscsi_target_erl1.h | ||
iscsi_target_erl2.c | ||
iscsi_target_erl2.h | ||
iscsi_target_login.c | ||
iscsi_target_login.h | ||
iscsi_target_nego.c | ||
iscsi_target_nego.h | ||
iscsi_target_nodeattrib.c | ||
iscsi_target_nodeattrib.h | ||
iscsi_target_parameters.c | ||
iscsi_target_parameters.h | ||
iscsi_target_seq_pdu_list.c | ||
iscsi_target_seq_pdu_list.h | ||
iscsi_target_stat.c | ||
iscsi_target_stat.h | ||
iscsi_target_tmr.c | ||
iscsi_target_tmr.h | ||
iscsi_target_tpg.c | ||
iscsi_target_tpg.h | ||
iscsi_target_tq.c | ||
iscsi_target_tq.h | ||
iscsi_target_util.c | ||
iscsi_target_util.h | ||
Kconfig | ||
Makefile |