The soon to be released smartmontools 5.34 uses the READ DEFECT DATA command on SCSI disks. A disk that has defect list entries (or worse, an increasing number of them) is at risk. Currently the first invocation of smartctl causes this: scsi: unknown opcode 0x37 message to appear the console and in the log. The READ DEFECT DATA SCSI command does not change the state of a disk. Its opcode (0x37) is valid for SBC devices (e.g. disks) and SMC-2 devices (media changers) where it is called INITIALIZE STATUS ELEMENT WITH RANGE and again doesn't change the external state of the device. The patch is against lk 2.6.13 . Changelog: - mark SCSI opcode 0x37 (READ DEFECT DATA) as safe_for_read Signed-off-by: Douglas Gilbert <dougg@xxxxxxxxxx> Doug Gilbert
--- linux/drivers/block/scsi_ioctl.c 2005-06-19 07:54:59.000000000 +1000 +++ linux/drivers/block/scsi_ioctl.c2613rdd 2005-09-09 17:21:52.000000000 +1000 @@ -123,6 +123,7 @@ safe_for_read(READ_12), safe_for_read(READ_16), safe_for_read(READ_BUFFER), + safe_for_read(READ_DEFECT_DATA), safe_for_read(READ_LONG), safe_for_read(INQUIRY), safe_for_read(MODE_SENSE),