[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240307214418.3812290-1-ipylypiv@google.com>
Date: Thu, 7 Mar 2024 13:44:11 -0800
From: Igor Pylypiv <ipylypiv@...gle.com>
To: Damien Le Moal <dlemoal@...nel.org>, Niklas Cassel <cassel@...nel.org>,
John Garry <john.g.garry@...cle.com>, Jason Yan <yanaijie@...wei.com>,
"James E.J. Bottomley" <jejb@...ux.ibm.com>, "Martin K. Petersen" <martin.petersen@...cle.com>,
Jack Wang <jinpu.wang@...ud.ionos.com>, Hannes Reinecke <hare@...e.de>,
Xiang Chen <chenxiang66@...ilicon.com>, Artur Paszkiewicz <artur.paszkiewicz@...el.com>,
Bart Van Assche <bvanassche@....org>
Cc: TJ Adams <tadamsjr@...gle.com>, linux-ide@...r.kernel.org,
linux-scsi@...r.kernel.org, linux-kernel@...r.kernel.org,
Igor Pylypiv <ipylypiv@...gle.com>
Subject: [PATCH v8 0/7] NCQ Priority sysfs sttributes for libsas
This patch series adds ncq_prio_supported and ncq_prio_enable sysfs
attributes for libsas managed SATA devices. Existing libata sysfs
attributes cannot be used directly because the ata_port location is
different for libsas.
Changes since v7:
- Dropped the WARN_ON_ONCE(!dev_is_sata(ddev)) checks from sas_ncq_prio_*
sysfs functions. The is_visible() callback hides the corresponding sysfs
attributes from userspace for non-SATA devices.
- Added missing "Return" descriptions to ata_ncq_prio_* kdocs.
- Updated the commit message of the "ata: libata-sata: Factor out
NCQ Priority configuration helpers" patch with the explanation
why spin_lock_irq() was changed to spin_lock_irqsave().
- Restored blank lines between spin_unlock and return in ata_ncq_prio_*
helpers.
- Updated the commit message of the hisi_sas patch to indicate that
hisi_sas_v1_hw.c was not modified because v1 HW does not support SATA.
Changes since v6:
- Replaced sas_ata_sdev_attr_group definition with a macro for
the "CONFIG_SCSI_SAS_ATA is not set" case. The macro defines
an empty rvalue struct eliminating the variable definition.
Changes since v5:
- Added __maybe_unused attribute to sas_ata_sdev_attr_group to prevent
an unused-const-variable warning when CONFIG_SCSI_SAS_ATA is not set.
Changes since v4:
- Updated sas_ncq_prio_* sysfs functions to use WARN_ON_ONCE() instead
of WARN_ON().
Changes since v3:
- Changed ata_ncq_prio_supported() and ata_ncq_prio_enabled() to store
the result into a boolean variable passed by address.
- Removed the "usable with both libsas and libata" wording from
ata_ncq_prio_* helper's function comments.
- Removed the unlikely() in ata_ncq_prio_enable() because the function
is not in a fastpath.
- Dropped hisi_sas v1 HW driver changes because it doesn't support SATA.
Changes since v2:
- Added libsas SATA sysfs attributes to aic94xx and isci.
Changes since v1:
- Dropped the "sas_" prefix to align sysfs sttributes naming with AHCI.
- Dropped ternary operators to make the code more readable.
- Corrected the formatting %u -> %d in sysfs_emit().
- Changed kstrtol() to kstrtobool() in [ata|sas]_ncq_prio_enable_store().
- Changed comments to use the "/* */" style instead of "//".
- Added libsas SATA sysfs attributes to mvsas and hisi_sas.
- Dropped the 'Reviewed-by' tags because they were not sent in-reply
to the patch emails.
Igor Pylypiv (7):
ata: libata-sata: Factor out NCQ Priority configuration helpers
scsi: libsas: Define NCQ Priority sysfs attributes for SATA devices
scsi: pm80xx: Add libsas SATA sysfs attributes group
scsi: mvsas: Add libsas SATA sysfs attributes group
scsi: hisi_sas: Add libsas SATA sysfs attributes group
scsi: aic94xx: Add libsas SATA sysfs attributes group
scsi: isci: Add libsas SATA sysfs attributes group
drivers/ata/libata-sata.c | 160 +++++++++++++++++++------
drivers/scsi/aic94xx/aic94xx_init.c | 8 ++
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 6 +
drivers/scsi/hisi_sas/hisi_sas_v3_hw.c | 6 +
drivers/scsi/isci/init.c | 6 +
drivers/scsi/libsas/sas_ata.c | 82 +++++++++++++
drivers/scsi/mvsas/mv_init.c | 7 ++
drivers/scsi/pm8001/pm8001_ctl.c | 5 +
drivers/scsi/pm8001/pm8001_init.c | 1 +
drivers/scsi/pm8001/pm8001_sas.h | 1 +
include/linux/libata.h | 6 +
include/scsi/sas_ata.h | 6 +
12 files changed, 256 insertions(+), 38 deletions(-)
--
2.44.0.278.ge034bb2e1d-goog
Powered by blists - more mailing lists