[PATCH v2 0/3] ata,sd: Fix reading concurrent positioning ranges

Tyler Erickson
2022-06-02T22:46:04Z

This patch series fixes reading the concurrent positioning ranges.

The first patch fixes reading this in libata, where it was reading
more data than a drive necessarily supports, resulting in a
command abort.

The second patch fixes the SCSI translated data to put the VPD page
length in the correct starting byte.

The third patch in sd, the fix is adding 4 instead of 3 for the header
length. Using 3 will always result in an error and was likely used
incorrectly as T10 specifications list all tables starting at byte 0,
and byte 3 is the page length, which would mean there are 4 total
bytes before the remaining data that contains the ranges and other
information.

Tyler Erickson (3):
libata: fix reading concurrent positioning ranges log
libata: fix translation of concurrent positioning ranges
scsi: sd: Fix interpretation of VPD B9h length

drivers/ata/libata-core.c | 21 +++++++++++++--------
drivers/ata/libata-scsi.c | 2 +-
drivers/scsi/sd.c | 2 +-
3 files changed, 15 insertions(+), 10 deletions(-)

base-commit: 700170bf6b4d773e328fa54ebb70ba444007c702
--
2.17.1