Already in 5.4 kernel through stable channel.
** Changed in: linux (Ubuntu Focal)
Status: Fix Committed => Fix Released
--
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1854547
Title:
【sas-1130】scsi: sd: define variable dif as unsigned int instead of
bool
Status in kunpeng920:
Fix Committed
Status in kunpeng920 ubuntu-18.04 series:
Invalid
Status in kunpeng920 ubuntu-18.04-hwe series:
Fix Released
Status in kunpeng920 ubuntu-19.04 series:
Invalid
Status in kunpeng920 ubuntu-19.10 series:
Fix Released
Status in kunpeng920 ubuntu-20.04 series:
Fix Committed
Status in kunpeng920 upstream-kernel series:
Fix Released
Status in linux package in Ubuntu:
Fix Released
Status in linux source package in Eoan:
Fix Released
Status in linux source package in Focal:
Fix Released
Bug description:
[Bug Description]
DIF3 WILL not work when run fio test
【Steps to Reproduce]
1. Enable DIF/DIX for DIF3 disk
2. fio test
[Actual Results]
IO error when running IO;
[ 781.032816] sd 5:0:0:0: [sdd] Disabling DIF Type 3 protection
[ 781.112250] sd 5:0:0:0: [sdd] tag#72 FAILED Result: hostbyte=DID_ERROR
driverbyte=DRIVER_OK
[ 781.112287] sd 5:0:0:0: [sdd] tag#72 CDB: Read(10) 28 00 00 00 00 00 00 00
08 00
[ 781.112305] print_req_error: I/O error, dev sdd, sector 0 flags 0
[ 781.118429] Buffer I/O error on dev sdd, logical block 0, async page read
[ 781.204243] sd 5:0:0:0: [sdd] tag#77 FAILED Result: hostbyte=DID_ERROR
driverbyte=DRIVER_OK
[ 781.204252] sd 5:0:0:0: [sdd] tag#77 CDB: Read(10) 28 00 00 00 00 00 00 00
08 00
[ 781.204257] print_req_error: I/O error, dev sdd, sector 0 flags 0
[ 781.210365] Buffer I/O error on dev sdd, logical block 0, async page read
[ 781.296238] sd 5:0:0:0: [sdd] tag#82 FAILED Result: hostbyte=DID_ERROR
driverbyte=DRIVER_OK
[ 781.296266] sd 5:0:0:0: [sdd] tag#82 CDB: Read(10) 28 00 00 00 00 00 00 00
08 00
[ 781.296276] print_req_error: I/O error, dev sdd, sector 0 flags 0
[ 781.302384] Buffer I/O error on dev sdd, logical block 0, async page read
[ 781.309207] ldm_validate_partition_table(): Disk read failed.
[ 781.392239] sd 5:0:0:0: [sdd] tag#87 FAILED Result: hostbyte=DID_ERROR
driverbyte=DRIVER_OK
[ 781.392267] sd 5:0:0:0: [sdd] tag#87 CDB: Read(10) 28 00 00 00 00 00 00 00
08 00
[ 781.392278] print_req_error: I/O error, dev sdd, sector 0 flags 0
[ 781.398386] Buffer I/O error on dev sdd, logical block 0, async page read
[ 781.484250] sd 5:0:0:0: [sdd] tag#92 FAILED Result: hostbyte=DID_ERROR
driverbyte=DRIVER_OK
[ 781.484260] sd 5:0:0:0: [sdd] tag#92 CDB: Read(10) 28 00 00 00 00 00 00 00
08 00
[ 781.484264] print_req_error: I/O error, dev sdd, sector 0 flags 0
[ 781.490371] Buffer I/O error on dev sdd, logical block 0, async page read
[ 781.576249] sd 5:0:0:0: [sdd] tag#97 FAILED Result: hostbyte=DID_ERROR
driverbyte=DRIVER_OK
[ 781.576278] sd 5:0:0:0: [sdd] tag#97 CDB: Read(10) 28 00 00 00 00 00 00 00
08 00
[ 781.576293] print_req_error: I/O error, dev sdd, sector 0 flags 0
[ 781.582399] Buffer I/O error on dev sdd, logical block 0, async page read
[ 781.668236] sd 5:0:0:0: [sdd] tag#102 FAILED Result: hostbyte=DID_ERROR
driverbyte=DRIVER_OK
[ 781.668245] sd 5:0:0:0: [sdd] tag#102 CDB: Read(10) 28 00 00 00 00 00 00
00 08 00
[ 781.668249] print_req_error: I/O error, dev sdd, sector 0 flags 0
[ 781.674354] Buffer I/O error on dev sdd, logical block 0, async page read
[ 781.681184] Dev sdd: unable to read RDB block 0
[ 781.764241] sd 5:0:0:0: [sdd] tag#121 FAILED Result: hostbyte=DID_ERROR
driverbyte=DRIVER_OK
[ 781.764267] sd 5:0:0:0: [sdd] tag#121 CDB: Read(10) 28 00 00 00 00 00 00
00 08 00
[ 781.764278] print_req_error: I/O error, dev sdd, sector 0 flags 0
[ 781.770386] Buffer I/O error on dev sdd, logical block 0, async page read
[ 781.856240] sd 5:0:0:0: [sdd] tag#126 FAILED Result: hostbyte=DID_ERROR
driverbyte=DRIVER_OK
[ 781.856248] sd 5:0:0:0: [sdd] tag#126 CDB: Read(10) 28 00 00 00 00 00 00
00 08 00
[ 781.856253] print_req_error: I/O error, dev sdd, sector 0 flags 0
[ 781.862362] Buffer I/O error on dev sdd, logical block 0, async page read
[ 781.948238] sd 5:0:0:0: [sdd] tag#131 FAILED Result: hostbyte=DID_ERROR
driverbyte=DRIVER_OK
[ 781.948264] sd 5:0:0:0: [sdd] tag#131 CDB: Read(10) 28 00 00 00 00 18 00
00 08 00
[ 781.948272] print_req_error: I/O error, dev sdd, sector 24 flags 0
[ 781.954467] Buffer I/O error on dev sdd, logical block 3, async page read
[ 782.120252] sdd: unable to read partition table
[Expected Results]
IO running normally
[Reproducibility]
occasionally
[Additional information]
Hardware: D06 CS
Firmware: NA+I59
Kernel: NA
[Resolution]
Variable dif in function sd_setup_read_write_cmnd() is the return value of
function scsi_host_dif_capable() which returns dif capability of disks. If
define it as bool, even for the disks which support DIF3, the function
still return dif=1, which causes IO error. So define variable dif as
unsigned int instead of bool.
scsi: sd: define variable dif as unsigned int instead of bool
To manage notifications about this bug go to:
https://bugs.launchpad.net/kunpeng920/+bug/1854547/+subscriptions
--
Mailing list: https://launchpad.net/~kernel-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~kernel-packages
More help : https://help.launchpad.net/ListHelp