NCQ не у всех винтов [SOLVED]
RNZ 12 февраля, 2008 - 15:49
Подключил на первый канал ICH8 диск WD Raptor - WDC WD1500ADFD-0 (ata1.00), ncq для трёх других винтов Maxtor 7V300F0 (ata2.00, ata5.00, ata6.00) подключённых к ICH8 отключился. Винты висящие на JMB363 (ata7.00, ata8.00) работают нормально
$ sudo dmesg | grep NCQ ata1.00: 293044655 sectors, multi 0: LBA48 NCQ (depth 31/32) ata2.00: 586114704 sectors, multi 0: LBA48 NCQ (not used) ata5.00: 586112591 sectors, multi 0: LBA48 NCQ (not used) ata6.00: 586112591 sectors, multi 0: LBA48 NCQ (not used) ata7.00: 586112591 sectors, multi 0: LBA48 NCQ (depth 31/32) ata8.00: 390719855 sectors, multi 0: LBA48 NCQ (depth 31/32)
$ sudo dmesg | grep ATA ahci 0000:00:1f.2: AHCI 0001.0100 32 slots 4 ports 3 Gbps 0x33 impl SATA mode ata1: SATA max UDMA/133 cmd 0xf8cdc100 ctl 0x00000000 bmdma 0x00000000 irq 219 ata2: SATA max UDMA/133 cmd 0xf8cdc180 ctl 0x00000000 bmdma 0x00000000 irq 219 ata5: SATA max UDMA/133 cmd 0xf8cdc300 ctl 0x00000000 bmdma 0x00000000 irq 219 ata6: SATA max UDMA/133 cmd 0xf8cdc380 ctl 0x00000000 bmdma 0x00000000 irq 219 ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 300) ata1.00: ATA-7: WDC WD1500ADFD-00NLR5, 21.07QR5, max UDMA/133 ata2: SATA link up 3.0 Gbps (SStatus 123 SControl 300) ata2.00: ATA-7: Maxtor 7V300F0, VA111630, max UDMA/133 ata5: SATA link up 3.0 Gbps (SStatus 123 SControl 300) ata5.00: ATA-7: Maxtor 7V300F0, VA111630, max UDMA/133 ata6: SATA link up 3.0 Gbps (SStatus 123 SControl 300) ata6.00: ATA-7: Maxtor 7V300F0, VA111630, max UDMA/133 scsi 0:0:0:0: Direct-Access ATA WDC WD1500ADFD-0 21.0 PQ: 0 ANSI: 5 scsi 1:0:0:0: Direct-Access ATA Maxtor 7V300F0 VA11 PQ: 0 ANSI: 5 scsi 4:0:0:0: Direct-Access ATA Maxtor 7V300F0 VA11 PQ: 0 ANSI: 5 scsi 5:0:0:0: Direct-Access ATA Maxtor 7V300F0 VA11 PQ: 0 ANSI: 5 ahci 0000:03:00.0: AHCI 0001.0000 32 slots 2 ports 3 Gbps 0x3 impl SATA mode ata7: SATA max UDMA/133 cmd 0xf8ce0100 ctl 0x00000000 bmdma 0x00000000 irq 17 ata8: SATA max UDMA/133 cmd 0xf8ce0180 ctl 0x00000000 bmdma 0x00000000 irq 17 ata7: SATA link up 3.0 Gbps (SStatus 123 SControl 300) ata7.00: ATA-7: Maxtor 7V300F0, VA111900, max UDMA/133 ata8: SATA link up 1.5 Gbps (SStatus 113 SControl 300) ata8.00: ATA-7: ST3200826AS, 3.03, max UDMA/133 scsi 6:0:0:0: Direct-Access ATA Maxtor 7V300F0 VA11 PQ: 0 ANSI: 5 scsi 7:0:0:0: Direct-Access ATA ST3200826AS 3.03 PQ: 0 ANSI: 5 ata9: PATA max UDMA/100 cmd 0x00019000 ctl 0x00019402 bmdma 0x0001a000 irq 16 ata10: PATA max UDMA/100 cmd 0x00019800 ctl 0x00019c02 bmdma 0x0001a008 irq 16 ata9.00: ATAPI: _NEC DVD_RW ND-4571A, 1-01, max UDMA/33 ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
Раньше с NCQ было ок:
http://www.gentoo.ru/node/7667
$ uname -a Linux rnzws 2.6.23-gentoo-r6 #1 SMP PREEMPT Sun Feb 10 03:26:47 MSK 2008 i686 Intel(R) Core(TM)2 CPU 6300 @ 1.86GHz GenuineIntel GNU/Linux
»
- Для комментирования войдите или зарегистрируйтесь
Такс...
Такс... Оказывается в новых ядрах Maxtor 7V300F0 с прошивкой VA111630 в "чёрном" списке:
$ sudo cat /usr/src/linux-2.6.22-gentoo-r9/drivers/ata/libata-core.c | grep -6 VA111630
/* NCQ is broken */
{ "Maxtor 6L250S0", "BANC1G10", ATA_HORKAGE_NONCQ },
{ "Maxtor 6B200M0", "BANC1BM0", ATA_HORKAGE_NONCQ },
{ "Maxtor 6B200M0", "BANC1B10", ATA_HORKAGE_NONCQ },
{ "Maxtor 7B250S0", "BANC1B70", ATA_HORKAGE_NONCQ, },
{ "Maxtor 7B300S0", "BANC1B70", ATA_HORKAGE_NONCQ },
{ "Maxtor 7V300F0", "VA111630", ATA_HORKAGE_NONCQ },
...
$ sudo cat /usr/src/linux-2.6.23-gentoo-r6/drivers/ata/libata-core.c | grep -6 VA111630
/* NCQ is broken */
{ "Maxtor 6L250S0", "BANC1G10", ATA_HORKAGE_NONCQ },
{ "Maxtor 6B200M0", "BANC1BM0", ATA_HORKAGE_NONCQ },
{ "Maxtor 6B200M0", "BANC1B10", ATA_HORKAGE_NONCQ },
{ "Maxtor 7B250S0", "BANC1B70", ATA_HORKAGE_NONCQ, },
{ "Maxtor 7B300S0", "BANC1B70", ATA_HORKAGE_NONCQ },
{ "Maxtor 7V300F0", "VA111630", ATA_HORKAGE_NONCQ },
...
Вот интересно, а может прошивка VA111900 тоже broken...
UPDATE: На этот вопрос тоже есть ответ:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=459ad68893a84fb0881e57919340b97edbbc3dc7
http://www.linux.org.ru/view-message.jsp?msgid=2326872
Покопал дальше, оказывается и WD Raptor тоже с NCQ колбасит, hdparm -tT для него выдаёт что-то невразумительное
/dev/sda:
Timing cached reads: 2690 MB in 2.00 seconds = 1370.34 MB/sec
Timing buffered disk reads: 93 MB in 3.02 seconds = 34.61 MB/sec
Отключаю NCQ
echo 1 > /sys/block/sda/device/queue_depth и скорость нормализуется:
/dev/sda:
Timing cached reads: 2760 MB in 2.00 seconds = 1380.10 MB/sec
Timing buffered disk reads: 250 MB in 3.02 seconds = 82.91 MB/sec
ковыряю дальше
$ sudo cat /usr/src/linux-2.6.23-gentoo-r6/drivers/ata/libata-core.c | grep -6 WD
/* Devices where NCQ should be avoided */
/* NCQ is slow */
{ "WDC WD740ADFD-00", NULL, ATA_HORKAGE_NONCQ },
{ "WDC WD740ADFD-00NLR1", NULL, ATA_HORKAGE_NONCQ, },
Стало быть и WDC WD1500ADFD-00NLR5 с прошивкой 21.07QR5 надо внести в этот список потому, как у него тоже "NCQ is slow".
Погуглил, оказывается народ уже тему расковырял:
http://lkml.org/lkml/2007/10/17/380
http://inferno.slug.org/cgi-bin/wiki?Western_Digital_NCQ
А так же по теме http://www.fcenter.ru/online.shtml?articles/hardware/hdd/17318
Если с Raptor особо разницы нет, то вот с Maxtor реально NCQ прирост даёт, на глаз комп заметно шустрее работает.
И для Seagate прирост тоже заметен, на нём Windows крутится, так для неё тоже AHCI драйвер патченый ICH8R>ICH8 скорости прибавил, намного шустрее грузиться стал комп.
Обновил
Обновил прошивку на Maxtor'ах до VA111900 которая на самом деле FwRev=VA111680
И теперь все с NCQ: