From: Greg-KH <gregkh@linuxfoundation.org>
To: "Nicholas A. Bellinger" <nab@linux-iscsi.org>
Cc: target-devel <target-devel@vger.kernel.org>,
stable <stable@vger.kernel.org>,
Pascal de Bruijn <p.debruijn@unilogic.nl>,
Lukasz Engel <lukasz.engel@softax.pl>,
Quinn Tran <quinn.tran@cavium.com>
Subject: Re: [PATCH-4.9.y 2/2] qla2xxx: Fix incorrect tcm_qla2xxx_free_cmd use during TMR ABORT (v2)
Date: Thu, 16 Nov 2017 16:44:30 +0000 [thread overview]
Message-ID: <20171116164430.GF24442@kroah.com> (raw)
In-Reply-To: <1510812307-14530-3-git-send-email-nab@linux-iscsi.org>
On Thu, Nov 16, 2017 at 06:05:07AM +0000, Nicholas A. Bellinger wrote:
> From: Nicholas Bellinger <nab@linux-iscsi.org>
>
> commit 6bcbb3174caa5f1ccc894f8ae077631659d5a629 upstream.
>
> This patch drops two incorrect usages of tcm_qla2xxx_free_cmd()
> during TMR ABORT within tcm_qla2xxx_handle_data_work() and
> tcm_qla2xxx_aborted_task(), which where attempting to dispatch
> into workqueue context to do tcm_qla2xxx_complete_free() and
> subsequently invoke transport_generic_free_cmd().
>
> This is incorrect because during TMR ABORT target-core will
> drop the outstanding se_cmd->cmd_kref references once it has
> quiesced the se_cmd via transport_wait_for_tasks(), and in
> the case of qla2xxx it should not attempt to do it's own
> transport_generic_free_cmd() once the abort has occured.
>
> As reported by Pascal, this was originally manifesting as a
> BUG_ON(cmd->cmd_in_wq) in qlt_free_cmd() during TMR ABORT,
> with a LIO backend that had sufficently high enough WRITE
> latency to trigger a host side TMR ABORT_TASK.
>
> (v2: Drop the qla_tgt_cmd->write_pending_abort_comp changes,
> as they will be addressed in a seperate series)
>
> Reported-by: Pascal de Bruijn <p.debruijn@unilogic.nl>
> Tested-by: Pascal de Bruijn <p.debruijn@unilogic.nl>
> Cc: Pascal de Bruijn <p.debruijn@unilogic.nl>
> Reported-by: Lukasz Engel <lukasz.engel@softax.pl>
> Cc: Lukasz Engel <lukasz.engel@softax.pl>
> Acked-by: Himanshu Madhani <himanshu.madhani@cavium.com>
> Cc: Quinn Tran <quinn.tran@cavium.com>
> Cc: <stable@vger.kernel.org> # 3.10+
> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
> ---
> drivers/scsi/qla2xxx/tcm_qla2xxx.c | 33 ---------------------------------
> 1 file changed, 33 deletions(-)
Thanks for this, but how about a backport for it for 4.4 and 3.18?
thanks,
greg k-h
WARNING: multiple messages have this Message-ID (diff)
From: Greg-KH <gregkh@linuxfoundation.org>
To: "Nicholas A. Bellinger" <nab@linux-iscsi.org>
Cc: target-devel <target-devel@vger.kernel.org>,
stable <stable@vger.kernel.org>,
Pascal de Bruijn <p.debruijn@unilogic.nl>,
Lukasz Engel <lukasz.engel@softax.pl>,
Quinn Tran <quinn.tran@cavium.com>
Subject: Re: [PATCH-4.9.y 2/2] qla2xxx: Fix incorrect tcm_qla2xxx_free_cmd use during TMR ABORT (v2)
Date: Thu, 16 Nov 2017 17:44:30 +0100 [thread overview]
Message-ID: <20171116164430.GF24442@kroah.com> (raw)
In-Reply-To: <1510812307-14530-3-git-send-email-nab@linux-iscsi.org>
On Thu, Nov 16, 2017 at 06:05:07AM +0000, Nicholas A. Bellinger wrote:
> From: Nicholas Bellinger <nab@linux-iscsi.org>
>
> commit 6bcbb3174caa5f1ccc894f8ae077631659d5a629 upstream.
>
> This patch drops two incorrect usages of tcm_qla2xxx_free_cmd()
> during TMR ABORT within tcm_qla2xxx_handle_data_work() and
> tcm_qla2xxx_aborted_task(), which where attempting to dispatch
> into workqueue context to do tcm_qla2xxx_complete_free() and
> subsequently invoke transport_generic_free_cmd().
>
> This is incorrect because during TMR ABORT target-core will
> drop the outstanding se_cmd->cmd_kref references once it has
> quiesced the se_cmd via transport_wait_for_tasks(), and in
> the case of qla2xxx it should not attempt to do it's own
> transport_generic_free_cmd() once the abort has occured.
>
> As reported by Pascal, this was originally manifesting as a
> BUG_ON(cmd->cmd_in_wq) in qlt_free_cmd() during TMR ABORT,
> with a LIO backend that had sufficently high enough WRITE
> latency to trigger a host side TMR ABORT_TASK.
>
> (v2: Drop the qla_tgt_cmd->write_pending_abort_comp changes,
> as they will be addressed in a seperate series)
>
> Reported-by: Pascal de Bruijn <p.debruijn@unilogic.nl>
> Tested-by: Pascal de Bruijn <p.debruijn@unilogic.nl>
> Cc: Pascal de Bruijn <p.debruijn@unilogic.nl>
> Reported-by: Lukasz Engel <lukasz.engel@softax.pl>
> Cc: Lukasz Engel <lukasz.engel@softax.pl>
> Acked-by: Himanshu Madhani <himanshu.madhani@cavium.com>
> Cc: Quinn Tran <quinn.tran@cavium.com>
> Cc: <stable@vger.kernel.org> # 3.10+
> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
> ---
> drivers/scsi/qla2xxx/tcm_qla2xxx.c | 33 ---------------------------------
> 1 file changed, 33 deletions(-)
Thanks for this, but how about a backport for it for 4.4 and 3.18?
thanks,
greg k-h
next prev parent reply other threads:[~2017-11-16 16:44 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-11-16 5:54 [PATCH-4.9.y 0/2] target: stable backports Nicholas A. Bellinger
2017-11-16 6:05 ` Nicholas A. Bellinger
2017-11-16 5:54 ` [PATCH-4.9.y 2/2] qla2xxx: Fix incorrect tcm_qla2xxx_free_cmd use during TMR ABORT (v2) Nicholas A. Bellinger
2017-11-16 6:05 ` Nicholas A. Bellinger
2017-11-16 16:44 ` Greg-KH [this message]
2017-11-16 16:44 ` Greg-KH
2017-11-16 5:54 ` [PATCH-4.9.y 1/2] target/iscsi: Fix iSCSI task reassignment handling Nicholas A. Bellinger
2017-11-16 6:05 ` Nicholas A. Bellinger
2017-11-16 16:46 ` [PATCH-4.9.y 0/2] target: stable backports Greg-KH
2017-11-16 16:46 ` Greg-KH
2018-01-12 23:46 ` Nicholas A. Bellinger
2018-01-12 23:46 ` Nicholas A. Bellinger
2018-01-12 23:46 ` [PATCH-4.9.y 1/2] iscsi-target: Make TASK_REASSIGN use proper se_cmd->cmd_kref Nicholas A. Bellinger
2018-01-12 23:46 ` [PATCH-4.9.y 2/2] target: Avoid early CMD_T_PRE_EXECUTE failures during ABORT_TASK Nicholas A. Bellinger
2018-01-13 17:33 ` [PATCH-4.9.y 0/2] target: stable backports Greg-KH
2018-01-13 17:33 ` Greg-KH
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20171116164430.GF24442@kroah.com \
--to=gregkh@linuxfoundation.org \
--cc=lukasz.engel@softax.pl \
--cc=nab@linux-iscsi.org \
--cc=p.debruijn@unilogic.nl \
--cc=quinn.tran@cavium.com \
--cc=stable@vger.kernel.org \
--cc=target-devel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.