From: Damien Le Moal <damien.lemoal@opensource.wdc.com>
To: John Garry <john.garry@huawei.com>,
jejb@linux.ibm.com, martin.petersen@oracle.com, hare@suse.de,
hch@lst.de
Cc: linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-scsi@vger.kernel.org, brking@us.ibm.com
Subject: Re: [PATCH RFC 0/6] libata/scsi/libsas: Allocate SCSI device earlier for ata port probe
Date: Wed, 21 Sep 2022 13:04:51 +0900 [thread overview]
Message-ID: <40b9e090-5ba3-1191-4fe9-80467284ae72@opensource.wdc.com> (raw)
In-Reply-To: <1663669630-21333-1-git-send-email-john.garry@huawei.com>
On 9/20/22 19:27, John Garry wrote:
> Currently for libata the SCSI device (sdev) associated with an ata_device
> is allocated when the port probe has completed.
>
> It's useful to have the SCSI device and its associated request queue
> available earlier for the port probe. Specifically if we have the
> request queue available, then we can:
> - Easily put ATA qc in SCSI cmnd priv data
> - Send ATA internal commands on SCSI device request queue for [0]. The
> current solution there is to use the shost sdev request queue, which
> isn't great.
>
> This series changes the ata port probe to alloc the sdev in the
> ata_device revalidation, and then just do a SCSI starget scan afterwards.
>
> Why an RFC?
> 1. IPR driver needs to be fixed up - it does not use ATA EH port probe
> Mail [1] needs following up
Yes. If IPR could be converted to ata error_handler, a lot of code can
be simplified in libata too.
> 2. SATA PMP support needs verification, but I don't have a setup
Port multiplier behind a sas HBA will be challenging to setup :)
I can try, but I will need to open up one of my servers and hook a small
PMP box to one of the pm8001 plugs. I may have the cables for that...
Let me check.
> 3. This series needs to be merged into or go after [0]
>
> Patch 1/6 could be merged now.
>
> [0] https://lore.kernel.org/linux-ide/1654770559-101375-1-git-send-email-john.garry@huawei.com/
> [1] https://lore.kernel.org/linux-ide/369448ed-f89a-c2db-1850-91450d8b5998@opensource.wdc.com/
>
> Any comments welcome - please have a look.
>
> Based on v6.0-rc4 and tested for QEMU AHCI and libsas.
>
> John Garry (6):
> scsi: core: Use SCSI_SCAN_RESCAN in __scsi_add_device()
> scsi: scsi_transport_sas: Allocate end device target id in the rphy
> alloc
> scsi: core: Add scsi_get_dev()
> ata: libata-scsi: Add ata_scsi_setup_sdev()
> scsi: libsas: Add sas_ata_setup_device()
> ata: libata-scsi: Allocate sdev early in port probe
>
> drivers/ata/libata-eh.c | 4 +++
> drivers/ata/libata-scsi.c | 45 +++++++++++++++++++++----------
> drivers/ata/libata.h | 1 +
> drivers/scsi/libsas/sas_ata.c | 20 ++++++++++++++
> drivers/scsi/scsi_scan.c | 28 ++++++++++++++++++-
> drivers/scsi/scsi_transport_sas.c | 25 +++++++++++------
> include/linux/libata.h | 2 ++
> include/scsi/scsi_host.h | 3 +++
> 8 files changed, 105 insertions(+), 23 deletions(-)
>
--
Damien Le Moal
Western Digital Research
next prev parent reply other threads:[~2022-09-21 4:05 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-20 10:27 John Garry
2022-09-20 10:27 ` [PATCH 1/6] scsi: core: Use SCSI_SCAN_RESCAN in __scsi_add_device() John Garry
2022-09-20 22:03 ` Damien Le Moal
2022-09-20 10:27 ` [PATCH RFC 2/6] scsi: scsi_transport_sas: Allocate end device target id in the rphy alloc John Garry
2022-09-20 22:02 ` Damien Le Moal
2022-09-21 9:21 ` John Garry
2022-09-20 10:27 ` [PATCH RFC 3/6] scsi: core: Add scsi_get_dev() John Garry
2022-09-20 21:58 ` Damien Le Moal
2022-09-21 9:17 ` John Garry
2022-09-20 10:27 ` [PATCH RFC 4/6] ata: libata-scsi: Add ata_scsi_setup_sdev() John Garry
2022-09-20 10:27 ` [PATCH RFC 5/6] scsi: libsas: Add sas_ata_setup_device() John Garry
2022-09-20 10:27 ` [PATCH RFC 6/6] ata: libata-scsi: Allocate sdev early in port probe John Garry
2022-09-21 4:04 ` Damien Le Moal [this message]
2022-09-21 8:24 ` [PATCH RFC 0/6] libata/scsi/libsas: Allocate SCSI device earlier for ata " John Garry
2022-09-21 8:31 ` Damien Le Moal
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=40b9e090-5ba3-1191-4fe9-80467284ae72@opensource.wdc.com \
--to=damien.lemoal@opensource.wdc.com \
--cc=brking@us.ibm.com \
--cc=hare@suse.de \
--cc=hch@lst.de \
--cc=jejb@linux.ibm.com \
--cc=john.garry@huawei.com \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.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
all inboxes | Powered by JetHome®