From: Jinpu Wang <jinpu.wang@ionos.com>
To: John Garry <john.garry@huawei.com>
Cc: jejb@linux.ibm.com, martin.petersen@oracle.com,
artur.paszkiewicz@intel.com, jinpu.wang@ionos.com,
chenxiang66@hisilicon.com, Ajish.Koshy@microchip.com,
yanaijie@huawei.com, linux-doc@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-scsi@vger.kernel.org,
linuxarm@huawei.com, liuqi115@huawei.com, Viswas.G@microchip.com,
damien.lemoal@opensource.wdc.com
Subject: Re: [PATCH 02/16] scsi: libsas: Delete lldd_clear_aca callback
Date: Tue, 25 Jan 2022 13:09:00 +0100 [thread overview]
Message-ID: <CAMGffEmDKBVT=VP4UEa9qUoTaTqTnuBKyEKCqngXOYLu9uG=9A@mail.gmail.com> (raw)
In-Reply-To: <1643110372-85470-3-git-send-email-john.garry@huawei.com>
On Tue, Jan 25, 2022 at 12:38 PM John Garry <john.garry@huawei.com> wrote:
>
> This callback is never called, so remove support.
>
> Signed-off-by: John Garry <john.garry@huawei.com>
Indeed.
Reviewed-by: Jack Wang <jinpu.wang@ionos.com>
Thx!
> ---
> Documentation/scsi/libsas.rst | 2 --
> drivers/scsi/aic94xx/aic94xx.h | 1 -
> drivers/scsi/aic94xx/aic94xx_init.c | 1 -
> drivers/scsi/aic94xx/aic94xx_tmf.c | 9 ---------
> drivers/scsi/hisi_sas/hisi_sas_main.c | 12 ------------
> drivers/scsi/isci/init.c | 1 -
> drivers/scsi/isci/task.c | 18 ------------------
> drivers/scsi/isci/task.h | 4 ----
> drivers/scsi/mvsas/mv_init.c | 1 -
> drivers/scsi/mvsas/mv_sas.c | 11 -----------
> drivers/scsi/mvsas/mv_sas.h | 1 -
> drivers/scsi/pm8001/pm8001_init.c | 1 -
> drivers/scsi/pm8001/pm8001_sas.c | 8 --------
> drivers/scsi/pm8001/pm8001_sas.h | 1 -
> include/scsi/libsas.h | 1 -
> 15 files changed, 72 deletions(-)
>
> diff --git a/Documentation/scsi/libsas.rst b/Documentation/scsi/libsas.rst
> index 6589dfefbc02..305a253d5c3b 100644
> --- a/Documentation/scsi/libsas.rst
> +++ b/Documentation/scsi/libsas.rst
> @@ -207,7 +207,6 @@ Management Functions (TMFs) described in SAM::
> /* Task Management Functions. Must be called from process context. */
> int (*lldd_abort_task)(struct sas_task *);
> int (*lldd_abort_task_set)(struct domain_device *, u8 *lun);
> - int (*lldd_clear_aca)(struct domain_device *, u8 *lun);
> int (*lldd_clear_task_set)(struct domain_device *, u8 *lun);
> int (*lldd_I_T_nexus_reset)(struct domain_device *);
> int (*lldd_lu_reset)(struct domain_device *, u8 *lun);
> @@ -262,7 +261,6 @@ can look like this (called last thing from probe())
>
> my_ha->sas_ha.lldd_abort_task = my_abort_task;
> my_ha->sas_ha.lldd_abort_task_set = my_abort_task_set;
> - my_ha->sas_ha.lldd_clear_aca = my_clear_aca;
> my_ha->sas_ha.lldd_clear_task_set = my_clear_task_set;
> my_ha->sas_ha.lldd_I_T_nexus_reset= NULL; (2)
> my_ha->sas_ha.lldd_lu_reset = my_lu_reset;
> diff --git a/drivers/scsi/aic94xx/aic94xx.h b/drivers/scsi/aic94xx/aic94xx.h
> index 8f24180646c2..f595bc2ee45e 100644
> --- a/drivers/scsi/aic94xx/aic94xx.h
> +++ b/drivers/scsi/aic94xx/aic94xx.h
> @@ -60,7 +60,6 @@ void asd_set_dmamode(struct domain_device *dev);
> /* ---------- TMFs ---------- */
> int asd_abort_task(struct sas_task *);
> int asd_abort_task_set(struct domain_device *, u8 *lun);
> -int asd_clear_aca(struct domain_device *, u8 *lun);
> int asd_clear_task_set(struct domain_device *, u8 *lun);
> int asd_lu_reset(struct domain_device *, u8 *lun);
> int asd_I_T_nexus_reset(struct domain_device *dev);
> diff --git a/drivers/scsi/aic94xx/aic94xx_init.c b/drivers/scsi/aic94xx/aic94xx_init.c
> index 7a78606598c4..954d0c5ae2e2 100644
> --- a/drivers/scsi/aic94xx/aic94xx_init.c
> +++ b/drivers/scsi/aic94xx/aic94xx_init.c
> @@ -960,7 +960,6 @@ static struct sas_domain_function_template aic94xx_transport_functions = {
>
> .lldd_abort_task = asd_abort_task,
> .lldd_abort_task_set = asd_abort_task_set,
> - .lldd_clear_aca = asd_clear_aca,
> .lldd_clear_task_set = asd_clear_task_set,
> .lldd_I_T_nexus_reset = asd_I_T_nexus_reset,
> .lldd_lu_reset = asd_lu_reset,
> diff --git a/drivers/scsi/aic94xx/aic94xx_tmf.c b/drivers/scsi/aic94xx/aic94xx_tmf.c
> index 0eb6e206a2b4..0ff0d6506ccf 100644
> --- a/drivers/scsi/aic94xx/aic94xx_tmf.c
> +++ b/drivers/scsi/aic94xx/aic94xx_tmf.c
> @@ -644,15 +644,6 @@ int asd_abort_task_set(struct domain_device *dev, u8 *lun)
> return res;
> }
>
> -int asd_clear_aca(struct domain_device *dev, u8 *lun)
> -{
> - int res = asd_initiate_ssp_tmf(dev, lun, TMF_CLEAR_ACA, 0);
> -
> - if (res == TMF_RESP_FUNC_COMPLETE)
> - asd_clear_nexus_I_T_L(dev, lun);
> - return res;
> -}
> -
> int asd_clear_task_set(struct domain_device *dev, u8 *lun)
> {
> int res = asd_initiate_ssp_tmf(dev, lun, TMF_CLEAR_TASK_SET, 0);
> diff --git a/drivers/scsi/hisi_sas/hisi_sas_main.c b/drivers/scsi/hisi_sas/hisi_sas_main.c
> index a05ec7aece5a..f014e458edbb 100644
> --- a/drivers/scsi/hisi_sas/hisi_sas_main.c
> +++ b/drivers/scsi/hisi_sas/hisi_sas_main.c
> @@ -1801,17 +1801,6 @@ static int hisi_sas_abort_task_set(struct domain_device *device, u8 *lun)
> return rc;
> }
>
> -static int hisi_sas_clear_aca(struct domain_device *device, u8 *lun)
> -{
> - struct hisi_sas_tmf_task tmf_task;
> - int rc;
> -
> - tmf_task.tmf = TMF_CLEAR_ACA;
> - rc = hisi_sas_debug_issue_ssp_tmf(device, lun, &tmf_task);
> -
> - return rc;
> -}
> -
> #define I_T_NEXUS_RESET_PHYUP_TIMEOUT (2 * HZ)
>
> static int hisi_sas_debug_I_T_nexus_reset(struct domain_device *device)
> @@ -2341,7 +2330,6 @@ static struct sas_domain_function_template hisi_sas_transport_ops = {
> .lldd_control_phy = hisi_sas_control_phy,
> .lldd_abort_task = hisi_sas_abort_task,
> .lldd_abort_task_set = hisi_sas_abort_task_set,
> - .lldd_clear_aca = hisi_sas_clear_aca,
> .lldd_I_T_nexus_reset = hisi_sas_I_T_nexus_reset,
> .lldd_lu_reset = hisi_sas_lu_reset,
> .lldd_query_task = hisi_sas_query_task,
> diff --git a/drivers/scsi/isci/init.c b/drivers/scsi/isci/init.c
> index aade707c5553..e294d5d961eb 100644
> --- a/drivers/scsi/isci/init.c
> +++ b/drivers/scsi/isci/init.c
> @@ -193,7 +193,6 @@ static struct sas_domain_function_template isci_transport_ops = {
> /* Task Management Functions. Must be called from process context. */
> .lldd_abort_task = isci_task_abort_task,
> .lldd_abort_task_set = isci_task_abort_task_set,
> - .lldd_clear_aca = isci_task_clear_aca,
> .lldd_clear_task_set = isci_task_clear_task_set,
> .lldd_I_T_nexus_reset = isci_task_I_T_nexus_reset,
> .lldd_lu_reset = isci_task_lu_reset,
> diff --git a/drivers/scsi/isci/task.c b/drivers/scsi/isci/task.c
> index 3fd88d72a0c0..403bfee34d84 100644
> --- a/drivers/scsi/isci/task.c
> +++ b/drivers/scsi/isci/task.c
> @@ -625,24 +625,6 @@ int isci_task_abort_task_set(
> }
>
>
> -/**
> - * isci_task_clear_aca() - This function is one of the SAS Domain Template
> - * functions. This is one of the Task Management functoins called by libsas.
> - * @d_device: This parameter specifies the domain device associated with this
> - * request.
> - * @lun: This parameter specifies the lun associated with this request.
> - *
> - * status, zero indicates success.
> - */
> -int isci_task_clear_aca(
> - struct domain_device *d_device,
> - u8 *lun)
> -{
> - return TMF_RESP_FUNC_FAILED;
> -}
> -
> -
> -
> /**
> * isci_task_clear_task_set() - This function is one of the SAS Domain Template
> * functions. This is one of the Task Management functoins called by libsas.
> diff --git a/drivers/scsi/isci/task.h b/drivers/scsi/isci/task.h
> index cae168b8916f..f96633fa6939 100644
> --- a/drivers/scsi/isci/task.h
> +++ b/drivers/scsi/isci/task.h
> @@ -140,10 +140,6 @@ int isci_task_abort_task_set(
> struct domain_device *d_device,
> u8 *lun);
>
> -int isci_task_clear_aca(
> - struct domain_device *d_device,
> - u8 *lun);
> -
> int isci_task_clear_task_set(
> struct domain_device *d_device,
> u8 *lun);
> diff --git a/drivers/scsi/mvsas/mv_init.c b/drivers/scsi/mvsas/mv_init.c
> index dcae2d4464f9..21429e3a3632 100644
> --- a/drivers/scsi/mvsas/mv_init.c
> +++ b/drivers/scsi/mvsas/mv_init.c
> @@ -64,7 +64,6 @@ static struct sas_domain_function_template mvs_transport_ops = {
>
> .lldd_abort_task = mvs_abort_task,
> .lldd_abort_task_set = mvs_abort_task_set,
> - .lldd_clear_aca = mvs_clear_aca,
> .lldd_clear_task_set = mvs_clear_task_set,
> .lldd_I_T_nexus_reset = mvs_I_T_nexus_reset,
> .lldd_lu_reset = mvs_lu_reset,
> diff --git a/drivers/scsi/mvsas/mv_sas.c b/drivers/scsi/mvsas/mv_sas.c
> index 1e52bc7febfa..fd273c3e069e 100644
> --- a/drivers/scsi/mvsas/mv_sas.c
> +++ b/drivers/scsi/mvsas/mv_sas.c
> @@ -1553,17 +1553,6 @@ int mvs_abort_task_set(struct domain_device *dev, u8 *lun)
> return rc;
> }
>
> -int mvs_clear_aca(struct domain_device *dev, u8 *lun)
> -{
> - int rc = TMF_RESP_FUNC_FAILED;
> - struct mvs_tmf_task tmf_task;
> -
> - tmf_task.tmf = TMF_CLEAR_ACA;
> - rc = mvs_debug_issue_ssp_tmf(dev, lun, &tmf_task);
> -
> - return rc;
> -}
> -
> int mvs_clear_task_set(struct domain_device *dev, u8 *lun)
> {
> int rc = TMF_RESP_FUNC_FAILED;
> diff --git a/drivers/scsi/mvsas/mv_sas.h b/drivers/scsi/mvsas/mv_sas.h
> index 8ff976c9967e..fa654c73beee 100644
> --- a/drivers/scsi/mvsas/mv_sas.h
> +++ b/drivers/scsi/mvsas/mv_sas.h
> @@ -441,7 +441,6 @@ int mvs_scan_finished(struct Scsi_Host *shost, unsigned long time);
> int mvs_queue_command(struct sas_task *task, gfp_t gfp_flags);
> int mvs_abort_task(struct sas_task *task);
> int mvs_abort_task_set(struct domain_device *dev, u8 *lun);
> -int mvs_clear_aca(struct domain_device *dev, u8 *lun);
> int mvs_clear_task_set(struct domain_device *dev, u8 * lun);
> void mvs_port_formed(struct asd_sas_phy *sas_phy);
> void mvs_port_deformed(struct asd_sas_phy *sas_phy);
> diff --git a/drivers/scsi/pm8001/pm8001_init.c b/drivers/scsi/pm8001/pm8001_init.c
> index d8a2121cb8d9..b8cf1bae4040 100644
> --- a/drivers/scsi/pm8001/pm8001_init.c
> +++ b/drivers/scsi/pm8001/pm8001_init.c
> @@ -123,7 +123,6 @@ static struct sas_domain_function_template pm8001_transport_ops = {
>
> .lldd_abort_task = pm8001_abort_task,
> .lldd_abort_task_set = pm8001_abort_task_set,
> - .lldd_clear_aca = pm8001_clear_aca,
> .lldd_clear_task_set = pm8001_clear_task_set,
> .lldd_I_T_nexus_reset = pm8001_I_T_nexus_reset,
> .lldd_lu_reset = pm8001_lu_reset,
> diff --git a/drivers/scsi/pm8001/pm8001_sas.c b/drivers/scsi/pm8001/pm8001_sas.c
> index 160ee8b228c9..4368122ab475 100644
> --- a/drivers/scsi/pm8001/pm8001_sas.c
> +++ b/drivers/scsi/pm8001/pm8001_sas.c
> @@ -1357,14 +1357,6 @@ int pm8001_abort_task_set(struct domain_device *dev, u8 *lun)
> return pm8001_issue_ssp_tmf(dev, lun, &tmf_task);
> }
>
> -int pm8001_clear_aca(struct domain_device *dev, u8 *lun)
> -{
> - struct pm8001_tmf_task tmf_task;
> -
> - tmf_task.tmf = TMF_CLEAR_ACA;
> - return pm8001_issue_ssp_tmf(dev, lun, &tmf_task);
> -}
> -
> int pm8001_clear_task_set(struct domain_device *dev, u8 *lun)
> {
> struct pm8001_tmf_task tmf_task;
> diff --git a/drivers/scsi/pm8001/pm8001_sas.h b/drivers/scsi/pm8001/pm8001_sas.h
> index a17da1cebce1..3ea53a0d0cc1 100644
> --- a/drivers/scsi/pm8001/pm8001_sas.h
> +++ b/drivers/scsi/pm8001/pm8001_sas.h
> @@ -649,7 +649,6 @@ int pm8001_scan_finished(struct Scsi_Host *shost, unsigned long time);
> int pm8001_queue_command(struct sas_task *task, gfp_t gfp_flags);
> int pm8001_abort_task(struct sas_task *task);
> int pm8001_abort_task_set(struct domain_device *dev, u8 *lun);
> -int pm8001_clear_aca(struct domain_device *dev, u8 *lun);
> int pm8001_clear_task_set(struct domain_device *dev, u8 *lun);
> int pm8001_dev_found(struct domain_device *dev);
> void pm8001_dev_gone(struct domain_device *dev);
> diff --git a/include/scsi/libsas.h b/include/scsi/libsas.h
> index 698f2032807b..d59618898619 100644
> --- a/include/scsi/libsas.h
> +++ b/include/scsi/libsas.h
> @@ -637,7 +637,6 @@ struct sas_domain_function_template {
> /* Task Management Functions. Must be called from process context. */
> int (*lldd_abort_task)(struct sas_task *);
> int (*lldd_abort_task_set)(struct domain_device *, u8 *lun);
> - int (*lldd_clear_aca)(struct domain_device *, u8 *lun);
> int (*lldd_clear_task_set)(struct domain_device *, u8 *lun);
> int (*lldd_I_T_nexus_reset)(struct domain_device *);
> int (*lldd_ata_check_ready)(struct domain_device *);
> --
> 2.26.2
>
next prev parent reply other threads:[~2022-01-25 12:16 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-25 11:32 [PATCH 00/16] scsi: libsas and users: Factor out LLDD TMF code John Garry
2022-01-25 11:32 ` [PATCH 01/16] scsi: libsas: Use enum for response frame DATAPRES field John Garry
2022-01-25 12:08 ` Jinpu Wang
2022-01-27 10:19 ` Christoph Hellwig
2022-01-27 10:42 ` John Garry
2022-01-27 11:31 ` chenxiang (M)
2022-01-27 11:55 ` John Garry
2022-01-25 11:32 ` [PATCH 02/16] scsi: libsas: Delete lldd_clear_aca callback John Garry
2022-01-25 12:09 ` Jinpu Wang [this message]
2022-01-27 10:20 ` Christoph Hellwig
2022-01-27 11:40 ` chenxiang (M)
2022-01-25 11:32 ` [PATCH 03/16] scsi: hisi_sas: Delete unused I_T_NEXUS_RESET_PHYUP_TIMEOUT John Garry
2022-01-25 12:10 ` Jinpu Wang
2022-01-25 11:32 ` [PATCH 04/16] scsi: libsas: Move SMP task handlers to core John Garry
2022-01-27 10:20 ` Christoph Hellwig
2022-01-25 11:32 ` [PATCH 05/16] scsi: libsas: Add struct sas_tmf_task John Garry
2022-01-25 13:37 ` Matthew Wilcox
2022-01-25 14:05 ` John Garry
2022-01-25 14:15 ` Matthew Wilcox
2022-01-25 14:38 ` John Garry
2022-01-27 10:21 ` Christoph Hellwig
2022-01-25 11:32 ` [PATCH 06/16] scsi: libsas: Add sas_task.tmf John Garry
2022-01-27 10:23 ` Christoph Hellwig
2022-01-27 12:55 ` chenxiang (M)
2022-01-27 16:01 ` John Garry
2022-01-28 8:06 ` chenxiang (M)
2022-01-25 11:32 ` [PATCH 07/16] scsi: libsas: Add sas_execute_tmf() John Garry
2022-01-27 10:23 ` Christoph Hellwig
2022-01-25 11:32 ` [PATCH 08/16] scsi: libsas: Add sas_execute_ssp_tmf() John Garry
2022-01-27 10:24 ` Christoph Hellwig
2022-01-27 10:46 ` John Garry
2022-01-25 11:32 ` [PATCH 09/16] scsi: libsas: Add TMF handler exec complete callback John Garry
2022-01-27 10:24 ` Christoph Hellwig
2022-01-25 11:32 ` [PATCH 10/16] scsi: libsas: Add TMF handler aborted callback John Garry
2022-01-27 10:25 ` Christoph Hellwig
2022-01-25 11:32 ` [PATCH 11/16] scsi: libsas: Add sas_abort_task_set() John Garry
2022-01-27 10:25 ` Christoph Hellwig
2022-01-25 11:32 ` [PATCH 12/16] scsi: libsas: Add sas_clear_task_set() John Garry
2022-01-27 10:25 ` Christoph Hellwig
2022-01-25 11:32 ` [PATCH 13/16] scsi: libsas: Add sas_lu_reset() John Garry
2022-01-27 10:26 ` Christoph Hellwig
2022-01-25 11:32 ` [PATCH 14/16] scsi: libsas: Add sas_query_task() John Garry
2022-01-27 10:26 ` Christoph Hellwig
2022-01-25 11:32 ` [PATCH 15/16] scsi: libsas: Add sas_abort_task() John Garry
2022-01-27 10:26 ` Christoph Hellwig
2022-01-25 11:32 ` [PATCH 16/16] scsi: libsas: Add sas_execute_ata_cmd() John Garry
2022-01-27 10:27 ` Christoph Hellwig
2022-01-27 6:37 ` [PATCH 00/16] scsi: libsas and users: Factor out LLDD TMF code Damien Le Moal
2022-01-27 10:17 ` John Garry
2022-01-27 11:56 ` Damien Le Moal
2022-01-28 6:37 ` Damien Le Moal
2022-01-28 9:09 ` John Garry
2022-01-31 15:58 ` John Garry
2022-02-03 9:44 ` Damien Le Moal
2022-02-03 15:55 ` John Garry
2022-02-04 0:36 ` Damien Le Moal
2022-02-04 3:02 ` Damien Le Moal
2022-02-04 10:36 ` John Garry
2022-02-04 11:27 ` Damien Le Moal
2022-02-04 11:50 ` John Garry
2022-02-07 13:09 ` John Garry
2022-02-07 13:13 ` Damien Le Moal
2022-01-28 8:12 ` chenxiang (M)
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='CAMGffEmDKBVT=VP4UEa9qUoTaTqTnuBKyEKCqngXOYLu9uG=9A@mail.gmail.com' \
--to=jinpu.wang@ionos.com \
--cc=Ajish.Koshy@microchip.com \
--cc=Viswas.G@microchip.com \
--cc=artur.paszkiewicz@intel.com \
--cc=chenxiang66@hisilicon.com \
--cc=damien.lemoal@opensource.wdc.com \
--cc=jejb@linux.ibm.com \
--cc=john.garry@huawei.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=linuxarm@huawei.com \
--cc=liuqi115@huawei.com \
--cc=martin.petersen@oracle.com \
--cc=yanaijie@huawei.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).