Re: mpt3sas and T10DIF

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I saw "ref tag" errors on NVMe devices, starting with 4.18 kernels. The fix was:

https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git/commit/?h=for-linus&id=7809167da5c86fd6bf309b33dee7a797e263342f



On 02/01/2019 10:20 AM, Sebastian Andrzej Siewior wrote:
Hi,

I tried to use T10DIF on a SAS disk(s) behind a LSI SAS3008 controller.
So I enabled type 1 via
	sg_format --format --fmtpinfo=2 /dev/sdX

on each disk, waited a few hours. After the operation completed the
disks reported that T10DIF is enabled. I was able to read/write from/to
the disk(s). This was on a v4.14 kernel.

Then I upgraded to v4.19 and things started to fall apart. I was able to
read/write the first LBA but everything after that failed:

|[  .343777] sd 0:0:0:0: [sda] tag#2788 FAILED Result: hostbyte=DID_ABORT driverbyte=DRIVER_SENSE
|[  .345709] sd 0:0:0:0: [sda] tag#2788 Sense Key : Illegal Request [current]
|[  .347481] sd 0:0:0:0: [sda] tag#2788 Add. Sense: Logical block reference tag check failed
|[  .349244] sd 0:0:0:0: [sda] tag#2788 CDB: Read(10) 28 20 00 00 00 04 00 00 08 00
|[  .352766] mpt3sas_cm0: log_info(0x3112043b): originator(PL), code(0x12), sub_code(0x043b)
|[  .354548] sd 0:0:0:0: [sda] tag#2789 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
|[  .356328] sd 0:0:0:0: [sda] tag#2789 Sense Key : Aborted Command [current]
|[  .358105] sd 0:0:0:0: [sda] tag#2789 Add. Sense: Logical block reference tag check failed
|[  .359868] sd 0:0:0:0: [sda] tag#2789 CDB: Write(10) 2a 20 00 00 00 01 00 00 01 00
|
|[  .508308] sd 0:0:0:0: [sda] tag#1180 FAILED Result: hostbyte=DID_ABORT driverbyte=DRIVER_SENSE
|[  .508323] sd 0:0:0:0: [sda] tag#1180 Sense Key : Illegal Request [current]
|[  .508326] sd 0:0:0:0: [sda] tag#1180 Add. Sense: Logical block reference tag check failed
|[  .508328] sd 0:0:0:0: [sda] tag#1180 CDB: Read(10) 28 20 00 00 00 02 00 00 02 00
|[  .508337] mpt3sas_cm0: log_info(0x3112043b): originator(PL), code(0x12), sub_code(0x043b)
|[  .534943] sd 0:0:0:0: [sda] tag#547 FAILED Result: hostbyte=DID_ABORT driverbyte=DRIVER_SENSE
|[  .534949] sd 0:0:0:0: [sda] tag#547 Sense Key : Illegal Request [current]
|[  .534954] sd 0:0:0:0: [sda] tag#547 Add. Sense: Logical block reference tag check failed
|[  .534958] sd 0:0:0:0: [sda] tag#547 CDB: Read(10) 28 20 00 00 00 01 00 00 01 00
|[  .534983] mpt3sas_cm0: log_info(0x3112043b): originator(PL), code(0x12), sub_code(0x043b)
|[  .535876] sd 0:0:0:0: [sda] tag#547 FAILED Result: hostbyte=DID_ABORT driverbyte=DRIVER_SENSE
|[  .535879] sd 0:0:0:0: [sda] tag#547 Sense Key : Illegal Request [current]
|[  .535882] sd 0:0:0:0: [sda] tag#547 Add. Sense: Logical block reference tag check failed
|[  .535884] sd 0:0:0:0: [sda] tag#547 CDB: Read(10) 28 20 00 00 00 03 00 00 01 00
|[  .535899] mpt3sas_cm0: log_info(0x3112043b): originator(PL), code(0x12), sub_code(0x043b)

I went back to v4.14 and the errors disappeared. In v4.19 I was able to
tell mpt3sas to disable T10DIF [0] and then I could read from the disk
again.
Does anyone have an idea what happened between v4.14 and v4.19 that
would explain this?
Since this runs productive I went back and disabled T10DIF.

[0] mpt3sas.prot_mask=2

Sebastian





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux