[PATCH v1 0/9] ATA support for storage element management commands

Damien Le Moal <[email protected]> Mon, 6 Jul 2026 15:56:01 +0900
Newsgroups org.kernel.vger.linux-ide,org.kernel.vger.linux-scsi
Message-ID <[email protected]>
This patch series adds support to libata for translating all storage
element management commands:
 - GET PHYSICAL ELEMENT STATUS
 - REMOVE ELEMENT AND TRUNCATE
 - RESTORE ELEMENTS AND REBUILD
 - REMOVE ELEMENT AND MODIFY ZONES

The first 2 patches add definitions to scsi_proto.h related to the
depopulation feature. The remaining patches modify libata to detect
support for this feature and add command translation support.

Martin,

I have more patches for sd and scsi_debug (depop emulation) that depend on
patch 1 & 2. So I am not sure how we should handle this series. Maybe we
should create a "depop" topic branch in the scsi or libata tree ? I am
open to suggestions.

Damien Le Moal (9):
  scsi: scsi_debug: move ASC and ASCQ definitions to scsi_proto.h
  scsi: define depopulation capabilities related service actions
  ata: libata: improve the definition of device flags
  ata: libata-scsi: improve ata_get_xlat_func
  ata: libata-core: detect support for depopulation capabilities
  ata: libata-scsi: add support for the GET PHYSICAL ELEMENT STATUS
    command
  ata: libata-scsi: add support for the REMOVE ELEMENT AND TRUNCATE
    command
  ata: libata-scsi: add support for the RESTORE ELEMENTS AND REBUILD
    command
  ata: libata-scsi: add support for the REMOVE ELEMENT AND MODIFY ZONES
    command

 drivers/ata/libata-core.c |  73 +++++++++-
 drivers/ata/libata-scsi.c | 300 +++++++++++++++++++++++++++++++++++++-
 drivers/scsi/scsi_debug.c |  46 ------
 include/linux/ata.h       |   4 +
 include/linux/libata.h    |  90 +++++++-----
 include/scsi/scsi_proto.h |  74 ++++++++++
 6 files changed, 493 insertions(+), 94 deletions(-)

-- 
2.54.0