?

Log in

Винчестерное - Оживший юзерпик

Aug. 11th, 2013

06:14 pm - Винчестерное

Previous Entry Share Next Entry

Вот интересно, как это? В одном и том же контроллере торчат два диска, почти одинаковых:


[    4.456002] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[    4.468001] ata1.00: ATA-8: WDC WD10EARS-00Y5B1, 80.00A80, max UDMA/133
[    4.468001] ata1.00: 1953525168 sectors, multi 0: LBA48 NCQ (depth 31/32)
[    4.472001] ata1.00: configured for UDMA/133
[    4.996018] ata2: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[    5.000016] ata2.00: ATA-8: SAMSUNG HD105SI, 1AJ10001, max UDMA/133
[    5.000016] ata2.00: 1953525168 sectors, multi 0: LBA48 NCQ (depth 31/32)
[    5.004016] ata2.00: configured for UDMA/133
[    6.104151] scsi 0:0:0:0: Direct-Access     ATA      WDC WD10EARS-00Y 80.0 PQ: 0 ANSI: 5
[    6.104309] scsi 1:0:0:0: Direct-Access     ATA      SAMSUNG HD105SI  1AJ1 PQ: 0 ANSI: 5
[    6.757972] sd 0:0:0:0: [sda] 1953525168 512-byte hardware sectors (1000205 MB)
[    6.757989] sd 0:0:0:0: [sda] Write Protect is off
[    6.757993] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
[    6.758016] sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[    6.758075] sd 0:0:0:0: [sda] 1953525168 512-byte hardware sectors (1000205 MB)
[    6.758088] sd 0:0:0:0: [sda] Write Protect is off
[    6.758092] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
[    6.758114] sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[    6.758119]  sda: sda1
[    6.763236] sd 0:0:0:0: [sda] Attached SCSI disk
[    6.763325] sd 1:0:0:0: [sdb] 1953525168 512-byte hardware sectors (1000205 MB)
[    6.763341] sd 1:0:0:0: [sdb] Write Protect is off
[    6.763345] sd 1:0:0:0: [sdb] Mode Sense: 00 3a 00 00
[    6.763368] sd 1:0:0:0: [sdb] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[    6.763420] sd 1:0:0:0: [sdb] 1953525168 512-byte hardware sectors (1000205 MB)
[    6.763434] sd 1:0:0:0: [sdb] Write Protect is off
[    6.763438] sd 1:0:0:0: [sdb] Mode Sense: 00 3a 00 00
[    6.763460] sd 1:0:0:0: [sdb] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[    6.763464]  sdb: sdb1
[    6.769963] sd 1:0:0:0: [sdb] Attached SCSI disk

hp:~# hdparm -i /dev/sda
/dev/sda:

 Model=WDC WD10EARS-00Y5B1                     , FwRev=80.00A80, SerialNo=     WD-WCAV5P352039
 Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=50
 BuffType=unknown, BuffSize=0kB, MaxMultSect=16, MultSect=?0?
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=1953525168
 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio3 pio4 
 DMA modes:  mdma0 mdma1 mdma2 
 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6 
 AdvancedPM=no WriteCache=disabled
 Drive conforms to: Unspecified:  ATA/ATAPI-1,2,3,4,5,6,7

 * signifies the current active mode
hp:~# hdparm -i /dev/sdb

/dev/sdb:

 Model=SAMSUNG HD105SI                         , FwRev=1AJ10001, SerialNo=S25GJ9BB203191      
 Config={ Fixed }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
 BuffType=unknown, BuffSize=32767kB, MaxMultSect=16, MultSect=?0?
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=1953525168
 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio1 pio2 pio3 pio4 
 DMA modes:  mdma0 mdma1 mdma2 
 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6 
 AdvancedPM=yes: disabled (255) WriteCache=disabled
 Drive conforms to: unknown:  ATA/ATAPI-0,1,2,3,4,5,6,7

 * signifies the current active mode



И при этом:
hp:~# hdparm -t /dev/sda

/dev/sda:
 Timing buffered disk reads:  312 MB in  3.00 seconds = 103.99 MB/sec
hp:~# hdparm -t /dev/sdb

/dev/sdb:
 Timing buffered disk reads:   34 MB in  3.10 seconds =  10.98 MB/sec

Comments:

[User Picture]
From:drf_ckoff
Date:August 11th, 2013 03:32 pm (UTC)
(Link)
ты б еще на hdparm -I посмотрел, мож чего интересного вычитаешь
(Reply) (Thread)
[User Picture]
From:tobotras
Date:August 11th, 2013 04:04 pm (UTC)
(Link)
Нашёл какой-то Advanced Power Management, выключил, не помогло.
(Reply) (Parent) (Thread)
[User Picture]
From:drf_ckoff
Date:August 11th, 2013 03:33 pm (UTC)
(Link)
да, еще вариант, что sdb на одном irq с каким-нить дерьмом и unmask irq выключен
(Reply) (Thread)
[User Picture]
From:bormotov
Date:August 11th, 2013 03:55 pm (UTC)
(Link)
прикольно.
а оставить только самсунг, картина меняется?
(Reply) (Thread)
[User Picture]
From:tobotras
Date:August 11th, 2013 04:04 pm (UTC)
(Link)
Поверх них двух живой RAID, ломать не хочется...
(Reply) (Parent) (Thread)
[User Picture]
From:bormotov
Date:August 11th, 2013 04:14 pm (UTC)
(Link)
аа, рейд, конечно, ломать не нужно.

можно оппробовать поискать в базе данных тестов fcenter.ru чего они намеряли, но боюсь это всё равно не раскроет тайну конкретно этого диска в этой конфигурации.

Кстати, а загрузиться с чего-нибудь, и потестить как бы без рейда?
(Reply) (Parent) (Thread)
[User Picture]
From:tobotras
Date:August 11th, 2013 04:23 pm (UTC)
(Link)
Ну, от рута ж мне никто не мешает читать не только с /dev/md0, но и с /dev/sdb. В отсутствие дисковой активности, думаю, рейд не мешает.
(Reply) (Parent) (Thread)
[User Picture]
From:bormotov
Date:August 11th, 2013 04:34 pm (UTC)
(Link)
хотя это всё подземный стук какой-то, но мне кажется, что само наличие еще одного диска в контроллере может как-то влиять.
(Reply) (Parent) (Thread)
[User Picture]
From:tobotras
Date:August 11th, 2013 04:51 pm (UTC)
(Link)
Там ещё три диска, это я умолчал :) С крайними двумя всё тоже хорошо. Только этот выбивается...
(Reply) (Parent) (Thread)
[User Picture]
From:bormotov
Date:August 11th, 2013 05:37 pm (UTC)
(Link)
ха!

тогда может сам диск какой-то особенный или гордый %)
(Reply) (Parent) (Thread)
[User Picture]
From:_zhecka_
Date:August 11th, 2013 04:35 pm (UTC)
(Link)
бедовые сектора на втором диске.сними и прогони mhdd
(Reply) (Thread)
[User Picture]
From:tobotras
Date:August 11th, 2013 04:50 pm (UTC)
(Link)
Там живой raid, снимать не хочется. SMART утверждает, что reallocated sector count = 0, так же, как и CRC error count.
(Reply) (Parent) (Thread)
[User Picture]
From:_zhecka_
Date:August 11th, 2013 04:56 pm (UTC)
(Link)
разбирать и не нужно. остановить - снять - подключить на другую машину - проверить - вернуть
(Reply) (Parent) (Thread)
[User Picture]
From:bormotov
Date:August 11th, 2013 05:39 pm (UTC)
(Link)
кста, у рейда есть фишка "surface patrol"? когда он время от времени просто читает диски. Если есть - очень рекомендуюется.
(Reply) (Parent) (Thread)
[User Picture]
From:k001
Date:August 12th, 2013 06:10 pm (UTC)
(Link)
Есть, называется scrubbing

Руками можно сделать так:
echo check > /sys/block/mdX/md/sync_action
watch cat /proc/mdstat

В RHEL есть скрипт /usr/sbin/raid-check, который запускается из крона (/etc/cron.d/raid-check) и делает этот самый чек.
(Reply) (Parent) (Thread)
[User Picture]
From:tobotras
Date:August 12th, 2013 06:23 pm (UTC)
(Link)
О! Ух ты. Спасибо!
(Reply) (Parent) (Thread)
[User Picture]
From:k001
Date:August 12th, 2013 06:44 pm (UTC)
(Link)
То есть это самсунг так себя ведёт?

Он какой-то очень весь зелёный (не покупайте зелёные диски в десктопы, тем более в сервера!)
Я бы, кроме APM, выключил ещё всякие silent guard, eco seek и прочие булшиты (кажется, в терминах hdparm это называется acoustic management).

Но скорость всё равно какая-то совсем печальная, так что можно вот ещё что сделать

- поменять SATA верёвку
- выключить NCQ ("echo $N > /sys/block/sdb/device/queue_depth", попробовать 1 или 2)
- прошить фирмварь (но вроде бы нет более свежей)
- погонять seatools (bootable iso: http://www.seagate.com/support/downloads/item/seatools-dos-master/)
- сделать ему харакири low level format
(Reply) (Thread)
[User Picture]
From:tobotras
Date:August 12th, 2013 08:01 pm (UTC)
(Link)
Самсунг. Я специально домой понапокупал зелёных, чтобы не шумели!

Всё выключено, включая acoustic mgmt.

Верёвки нет, это сервер с корзиной и защёлками. Остальные мысли думаю.
(Reply) (Parent) (Thread)
[User Picture]
From:tobotras
Date:August 12th, 2013 08:04 pm (UTC)
(Link)
Особенно смешно знаешь, что? Что я -- склеротик!
(Reply) (Parent) (Thread)
[User Picture]
From:k001
Date:August 13th, 2013 02:27 am (UTC)
(Link)
То есть помогает выключить NCQ, хехе. Это кривая фирмварь, которая полагает, что умеет делать NCQ, а на самом деле нет.

Хмм. В ведре есть блеклист этих девайсов (drivers/ata/libata-core.c ata_device_blacklist). Твоего самсунга в нём нет, вероятно, потому, что их всего было довольно мало выпущено. Если б ты два года назад послал патч, уже бы, наверное, ядро с фиксом попало бы в твой дистрибутив.
(Reply) (Parent) (Thread)
[User Picture]
From:k001
Date:August 13th, 2013 02:40 am (UTC)
(Link)
Вот текущий блеклист про NCQ (kernel v3.11-rc3, хотя последнее добавление с NONCQ было в апреле 2010 года, http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=68b0ddb):


/* Devices where NCQ should be avoided */
/* NCQ is slow */
{ "WDC WD740ADFD-00", NULL, ATA_HORKAGE_NONCQ },
{ "WDC WD740ADFD-00NLR1", NULL, ATA_HORKAGE_NONCQ, },
/* http://thread.gmane.org/gmane.linux.ide/14907 */
{ "FUJITSU MHT2060BH", NULL, ATA_HORKAGE_NONCQ },
/* NCQ is broken */
{ "Maxtor *", "BANC*", ATA_HORKAGE_NONCQ },
{ "Maxtor 7V300F0", "VA111630", ATA_HORKAGE_NONCQ },
{ "ST380817AS", "3.42", ATA_HORKAGE_NONCQ },
{ "ST3160023AS", "3.42", ATA_HORKAGE_NONCQ },
{ "OCZ CORE_SSD", "02.10104", ATA_HORKAGE_NONCQ },

/* Seagate NCQ + FLUSH CACHE firmware bug */
{ "ST31500341AS", "SD1[5-9]", ATA_HORKAGE_NONCQ |
ATA_HORKAGE_FIRMWARE_WARN },

{ "ST31000333AS", "SD1[5-9]", ATA_HORKAGE_NONCQ |
ATA_HORKAGE_FIRMWARE_WARN },

{ "ST3640[36]23AS", "SD1[5-9]", ATA_HORKAGE_NONCQ |
ATA_HORKAGE_FIRMWARE_WARN },

{ "ST3320[68]13AS", "SD1[5-9]", ATA_HORKAGE_NONCQ |
ATA_HORKAGE_FIRMWARE_WARN },

/* Blacklist entries taken from Silicon Image 3124/3132
Windows driver .inf file - also several Linux problem reports */
{ "HTS541060G9SA00", "MB3OC60D", ATA_HORKAGE_NONCQ, },
{ "HTS541080G9SA00", "MB4OC60D", ATA_HORKAGE_NONCQ, },
{ "HTS541010G9SA00", "MBZOC60D", ATA_HORKAGE_NONCQ, },

/* https://bugzilla.kernel.org/show_bug.cgi?id=15573 */
{ "C300-CTFDDAC128MAG", "0001", ATA_HORKAGE_NONCQ, },
(Reply) (Parent) (Thread)