libata: add Samsung HD401LJ to the NCQ blacklist
PATCH 1/1 libata: add Samsung HD401LJ to the NCQ blacklist
Yet another hard drive which doesn't seem to get NCQ right.
ata1: EH in ADMA mode, notifier 0x0 notifier_error 0x0 gen_ctl 0x1501000 status 0x400 next cpb count 0xB next cpb idx 0x0 [...]
ata1: timeout waiting for ADMA IDLE, stat=0x400
ata1: timeout waiting for ADMA LEGACY, stat=0x400 ata1.00: exception Emask 0x0 SAct 0x3fff SErr 0x200000 action 0x2 frozen
[...]
ata1: soft resetting port
http://lkml.org/lkml/2007/3/16/184
drivers/ata/libata-core.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)
drivers/ata/libata-core.c +1 -0
@@ -3374,6 +3374,7 @@ static const struct ata_blacklist_entry ata_device_blacklist [] = { { "Maxtor 6L250S0", "BANC1G10", ATA_HORKAGE_NONCQ },/* NCQ hard hangs device under heavier load, needs hard power cycle */ { "Maxtor 6B250S0", "BANC1B70", ATA_HORKAGE_NONCQ }, + { "SAMSUNG HD401LJ", NULL, ATA_HORKAGE_NONCQ, }, /* Blacklist entries taken from Silicon Image 3124/3132 Windows driver .inf file - also several Linux problem reports */ { "HTS541060G9SA00", "MB3OC60D", ATA_HORKAGE_NONCQ, },
Quoted 23 lines · Max Kellermann
Yet another hard drive which doesn't seem to get NCQ right.
ata1: EH in ADMA mode, notifier
0x0notifier_error0x0gen_ctl0x1501000status0x400next cpb count0xBnext cpb idx0x0[...]
ata1: timeout waiting for ADMA IDLE, stat=0x400
ata1: timeout waiting for ADMA LEGACY, stat=0x400 ata1.00: exception Emask0x0SAct0x3fffSErr0x200000action0x2frozen
[...]
ata1: soft resetting porthttp://lkml.org/lkml/2007/3/16/184
Signed-off-by Max Kellermann <[email protected]>drivers/ata/libata-core.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)drivers/ata/libata-core.c +0
-0
drivers/ata/libata-core.c static const struct ata_blacklist_entry ata_device_blacklist [] = { · line 3380
Quoted 7 lines
drivers/ata/libata-core.c +1
-0@@ -3374,6 +3374,7 @@ static const struct ata_blacklist_entry ata_device_blacklist [] = { { "Maxtor 6L250S0", "BANC1G10", ATA_HORKAGE_NONCQ },/* NCQ hard hangs device under heavier load, needs hard power cycle */ { "Maxtor 6B250S0", "BANC1B70", ATA_HORKAGE_NONCQ }, + { "SAMSUNG HD401LJ", NULL, ATA_HORKAGE_NONCQ, }, /* Blacklist entries taken from Silicon Image 3124/3132 Windows driver .inf file - also several Linux problem reports */ { "HTS541060G9SA00", "MB3OC60D", ATA_HORKAGE_NONCQ, },
Can you try it on another controller? Say, a ahci or sil24?
Signature · 1 line
tejun
Quoted 1 line · Tejun Heo
Can you try it on another controller? Say, a ahci or sil24?
Seems to work ok on a Via VT8251 controller (AHCI) on kernel 2.6.21-rc6-git4 without my NCQ disabling patch.
By the way, on this machine, I had a lot of SATA timeouts during kernel boot, which were solved by appending "nomsi". Do you believe there might be a relation to the NCQ problems on my first (Nforce) machine?
Max
Quoted 5 lines · Max Kellermann
Quoted 1 line · Tejun Heo
Can you try it on another controller? Say, a ahci or sil24?
Seems to work ok on a Via VT8251 controller (AHCI) on kernel 2.6.21-rc6-git4 without my NCQ disabling patch.
Unfortunately, NCQ is not supported on VT8251, so it doesn't prove anything. :-(
Quoted 4 lines
By the way, on this machine, I had a lot of SATA timeouts during kernel boot, which were solved by appending "nomsi". Do you believe there might be a relation to the NCQ problems on my first (Nforce) machine?
It's more likely your chipset just has busted MSI support. Please post the result of 'lspci -tv' and 'lspci -nn'.
Thanks.
Signature · 1 line
tejun
Quoted 2 lines · Tejun Heo
It's more likely your chipset just has busted MSI support. Please post the result of 'lspci -tv' and 'lspci -nn'.
See attachments. I found the "nomsi" workaround in a forum, and didn't bother to investigate the real cause yet.
Max
-[0000:00]-+-00.0 VIA Technologies, Inc. VT3351 Host Bridge
+-00.1 VIA Technologies, Inc. VT3351 Host Bridge
+-00.2 VIA Technologies, Inc. VT3351 Host Bridge
+-00.3 VIA Technologies, Inc. VT3351 Host Bridge
+-00.4 VIA Technologies, Inc. VT3351 Host Bridge
+-00.5 VIA Technologies, Inc. VT3351 I/O APIC Interrupt Controller
+-00.7 VIA Technologies, Inc. VT3351 Host Bridge
+-01.0-[0000:01]--
+-02.0-[0000:02]--
+-03.0-[0000:03]--
+-0f.0 VIA Technologies, Inc. VT8251 AHCI/SATA 4-Port Controller
+-0f.1 VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE
+-10.0 VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller
+-10.1 VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller
+-10.2 VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller
+-10.3 VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller
+-10.4 VIA Technologies, Inc. USB 2.0
+-11.0 VIA Technologies, Inc. VT8251 PCI to ISA Bridge
+-11.7 VIA Technologies, Inc. VT8251 Ultra VLINK Controller
+-12.0 VIA Technologies, Inc. VT6102 [Rhine-II]
+-13.0-[0000:04-06]--+-00.0-[0000:05]--
| \-00.1-[0000:06]--
+-13.1-[0000:07]--+-0b.0 Matrox Graphics, Inc. MGA 2064W [Millennium]
| +-0c.0 Intel Corporation 82546GB Gigabit Ethernet Controller
| +-0c.1 Intel Corporation 82546GB Gigabit Ethernet Controller
| \-0d.0 Promise Technology, Inc. PDC40718 (SATA 300 TX4)
+-18.0 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration
+-18.1 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map
+-18.2 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller
\-18.3 Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control00:00.0 Host bridge [0600]: VIA Technologies, Inc. VT3351 Host Bridge [1106:0351]
00:00.1 Host bridge [0600]: VIA Technologies, Inc. VT3351 Host Bridge [1106:1351]
00:00.2 Host bridge [0600]: VIA Technologies, Inc. VT3351 Host Bridge [1106:2351]
00:00.3 Host bridge [0600]: VIA Technologies, Inc. VT3351 Host Bridge [1106:3351]
00:00.4 Host bridge [0600]: VIA Technologies, Inc. VT3351 Host Bridge [1106:4351]
00:00.5 PIC [0800]: VIA Technologies, Inc. VT3351 I/O APIC Interrupt Controller [1106:5351]
00:00.7 Host bridge [0600]: VIA Technologies, Inc. VT3351 Host Bridge [1106:7351]
00:01.0 PCI bridge [0604]: VIA Technologies, Inc. [K8T890 North / VT8237 South] PCI Bridge [1106:b999] 00:02.0 PCI bridge [0604]: VIA Technologies, Inc. K8T890 PCI to PCI Bridge Controller [1106:a238]
00:03.0 PCI bridge [0604]: VIA Technologies, Inc. K8T890 PCI to PCI Bridge Controller [1106:c238]
00:0f.0 RAID bus controller [0104]: VIA Technologies, Inc. VT8251 AHCI/SATA 4-Port Controller [1106:3349] 00:0f.1 IDE interface [0101]: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE [1106:0571] (rev 07) 00:10.0 USB Controller [0c03]: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller [1106:3038] (rev 90) 00:10.1 USB Controller [0c03]: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller [1106:3038] (rev 90) 00:10.2 USB Controller [0c03]: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller [1106:3038] (rev 90) 00:10.3 USB Controller [0c03]: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller [1106:3038] (rev 90) 00:10.4 USB Controller [0c03]: VIA Technologies, Inc. USB 2.0 [1106:3104] (rev 90)
00:11.0 ISA bridge [0601]: VIA Technologies, Inc. VT8251 PCI to ISA Bridge [1106:3287]
00:11.7 Host bridge [0600]: VIA Technologies, Inc. VT8251 Ultra VLINK Controller [1106:287e]
00:12.0 Ethernet controller [0200]: VIA Technologies, Inc. VT6102 [Rhine-II] [1106:3065] (rev 7c)
00:13.0 PCI bridge [0604]: VIA Technologies, Inc. VT8251 Host Bridge [1106:287b]
00:13.1 PCI bridge [0604]: VIA Technologies, Inc. VT8251 PCI to PCI Bridge [1106:287a]
00:18.0 Host bridge [0600]: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration [1022:1100] 00:18.1 Host bridge [0600]: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map [1022:1101] 00:18.2 Host bridge [0600]: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller [1022:1102] 00:18.3 Host bridge [0600]: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control [1022:1103] 04:00.0 PCI bridge [0604]: VIA Technologies, Inc. VT8251 PCIE Root Port [1106:287c]
04:00.1 PCI bridge [0604]: VIA Technologies, Inc. VT8251 PCIE Root Port [1106:287d]
07:0b.0 VGA compatible controller [0300]: Matrox Graphics, Inc. MGA 2064W [Millennium] [102b:0519] (rev 01) 07:0c.0 Ethernet controller [0200]: Intel Corporation 82546GB Gigabit Ethernet Controller [8086:1079] (rev 03) 07:0c.1 Ethernet controller [0200]: Intel Corporation 82546GB Gigabit Ethernet Controller [8086:1079] (rev 03) 07:0d.0 Mass storage controller [0180]: Promise Technology, Inc. PDC40718 (SATA 300 TX4) [105a:3d17] (rev 02)
Quoted 6 lines · Max Kellermann
Quoted 2 lines · Tejun Heo
It's more likely your chipset just has busted MSI support. Please post the result of 'lspci -tv' and 'lspci -nn'.
See attachments. I found the "nomsi" workaround in a forum, and didn't bother to investigate the real cause yet.
Just to be sure, can you post dmesg of boot without 'pci=nomsi'? If you root fs is on SATA, you'll probably have to use serial or netconsole to capture the log. I wanna be sure that it really is a busted MSI before submitting patch to disable MSI on the particular chipset.
Thanks.
Signature · 1 line
tejun