Назад | Перейти на главную страницу

Пул импорта ZFS ahcich0: тайм-аут (NanoBSD 8.2 -> 9.1)

Много раз, когда мне приходилось вносить изменения в систему, я загружаюсь с USB-накопителя на новую сборку NanoBSD, а затем импортирую пул в систему. При переходе с 8.2 на 9.1 делаю то же самое - загружаюсь с флешки новой сборки NanoBSD 9.1. Когда я импортирую пул в новую систему с помощью:

# zfs import tank

система около 10 секунд не отвечает, затем сообщение:

ahcich0: Timeout on slot 0 port 0
ahcich0: is 00000000 cs 00000001 ss 00000000 rs 00000001 tfd 58 serr 00000000 cmd 0000c017
(ada0:ahcich0:0:0:0): READ_MUL. ACB: C4 00 00 00 00 40 00 00 00 00 00 00
(ada0:ahcich0:0:0:0): CAM status: Command timeout
(ada0:ahcich0:0:0:0): Retrying command

сообщение повторяется.

Пожалуйста, помогите мне с проблемой импорта пула в новую систему.

Система:

ZFS v15

# zpool list
NAME   SIZE   USED  AVAIL    CAP  HEALTH  ALTROOT
tank   464G  11.8G   452G     2%  ONLINE  -

# zpool status
  pool: tank
 state: ONLINE
 scrub: none requested
config:

        NAME        STATE     READ WRITE CKSUM
        tank        ONLINE       0     0     0
          mirror    ONLINE       0     0     0
            ada0    ONLINE       0     0     0
            ada1    ONLINE       0     0     0

errors: No known data errors

В NanoBSD 8.2 я использовал ATA_CAM:

# ATA controllers
device          ahci            # AHCI-compatible SATA controllers
device          ata             # Legacy ATA/SATA controllers
options         ATA_CAM         # Handle legacy controllers with CAM
options         ATA_STATIC_ID   # Static device numbering
device          mvs             # Marvell 88SX50XX/88SX60XX/88SX70XX/SoC SATA
device          siis            # SiliconImage SiI3124/SiI3132/SiI3531 SATA

В NanoBSD 9.1 по умолчанию использовался ATA_CAM.

ТЮНИНГ:

# cat /boot/loader.conf
# BOOT
loader_logo=none          # Disable the loader logo
autoboot_delay=2          # Reduce the autoboot delay to 2 seconds
hw.ata.atapi_dma=0        # Disable DMA for ATAPI (CD) drive
hw.ata.ata_dma=0          # Disable DMA for hard-drive and CF
hw.ata.wc=0               # Disable disk write caching
net.fibs=16               # Numbers of FIB
kern.cam.boot_delay=10000 # Fix booting from USB device bug
# GEOM 
kern.geom.raid.enable=0   # Fix GEOM_RAID in GENERIC

АППАРАТНОЕ ОБЕСПЕЧЕНИЕ:

ahci0@pci0:0:31:2:      class=0x010601 card=0x868015d9 chip=0x26818086 rev=0x09 hdr=0x00
vendor     = 'Intel Corporation'
device     = 'LSI LOGIC, 62089A2, LSISAS1068 B0, T 0620, WE 119200.1 (62089A2)'
class      = mass storage
subclass   = SATA
cap 01[70] = powerspec 2  supports D0 D3  current D0
cap 12[a8] = SATA Index-Data Pair

# dmesg | grep ahci 
ahci0: <Intel ESB2 AHCI SATA controller> port 0x18c0-0x18c7,0x1894-0x1897,0x1898-0x189f,0x1890-0x1893,0x18a0-0x18bf mem 0xd8500400-0xd85007ff irq 19 at device 31.2 on pci0
ahci0: [ITHREAD]
ahci0: AHCI v1.10 with 6 3Gbps ports, Port Multiplier supported
ahcich0: <AHCI channel> at channel 0 on ahci0
ahcich0: [ITHREAD]
ahcich1: <AHCI channel> at channel 1 on ahci0
ahcich1: [ITHREAD]
ahcich2: <AHCI channel> at channel 2 on ahci0
ahcich2: [ITHREAD]
ahcich3: <AHCI channel> at channel 3 on ahci0
ahcich3: [ITHREAD]
ahcich4: <AHCI channel> at channel 4 on ahci0
ahcich4: [ITHREAD]
ahcich5: <AHCI channel> at channel 5 on ahci0
ahcich5: [ITHREAD]
ada0 at ahcich0 bus 0 scbus1 target 0 lun 0
ada1 at ahcich1 bus 0 scbus2 target 0 lun 0

# smartctl -a /dev/ada0
smartctl 5.43 2012-06-30 r3573 [FreeBSD 8.2-RELEASE-p10 amd64] (local build)
Copyright (C) 2002-12 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF INFORMATION SECTION ===
Model Family:     Hitachi Deskstar 7K500
Device Model:     HDS725050KLA360
Serial Number:    KRVN0AZBGKP2RJ
LU WWN Device Id: 5 000cca 20ec80978
Firmware Version: K2AOAB0A
User Capacity:    500,107,862,016 bytes [500 GB]
Sector Size:      512 bytes logical/physical
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   7
ATA Standard is:  ATA/ATAPI-7 T13 1532D revision 1
Local Time is:    Wed Mar 20 09:59:39 2013 EET
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000b   100   100   016    Pre-fail  Always       -       0
  2 Throughput_Performance  0x0005   160   160   050    Pre-fail  Offline      -       202
  3 Spin_Up_Time            0x0007   140   140   024    Pre-fail  Always       -       499 (Average 499)
  4 Start_Stop_Count        0x0012   100   100   000    Old_age   Always       -       104
  5 Reallocated_Sector_Ct   0x0033   100   100   005    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x000b   100   100   067    Pre-fail  Always       -       0
  8 Seek_Time_Performance   0x0005   100   100   020    Pre-fail  Offline      -       54
  9 Power_On_Hours          0x0012   098   098   000    Old_age   Always       -       20807
 10 Spin_Retry_Count        0x0013   100   100   060    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       102
192 Power-Off_Retract_Count 0x0032   100   100   050    Old_age   Always       -       463
193 Load_Cycle_Count        0x0012   100   100   050    Old_age   Always       -       463
194 Temperature_Celsius     0x0002   157   157   000    Old_age   Always       -       35 (Min/Max 16/52)
196 Reallocated_Event_Count 0x0032   100   100   000    Old_age   Always       -       0
197 Current_Pending_Sector  0x0022   100   100   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0008   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x000a   200   253   000    Old_age   Always       -       0

# smartctl -a /dev/ada1
smartctl 5.43 2012-06-30 r3573 [FreeBSD 8.2-RELEASE-p10 amd64] (local build)
Copyright (C) 2002-12 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF INFORMATION SECTION ===
Model Family:     Hitachi Deskstar 7K500
Device Model:     HDS725050KLA360
Serial Number:    KRVP67ZBGTLUEF
LU WWN Device Id: 5 000cca 20ecb2f8e
Firmware Version: K2AOAB0A
User Capacity:    500,107,862,016 bytes [500 GB]
Sector Size:      512 bytes logical/physical
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   7
ATA Standard is:  ATA/ATAPI-7 T13 1532D revision 1
Local Time is:    Wed Mar 20 09:59:41 2013 EET
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000b   099   099   016    Pre-fail  Always       -       131072
  2 Throughput_Performance  0x0005   100   100   050    Pre-fail  Offline      -       110
  3 Spin_Up_Time            0x0007   150   150   024    Pre-fail  Always       -       393 (Average 540)
  4 Start_Stop_Count        0x0012   100   100   000    Old_age   Always       -       92
  5 Reallocated_Sector_Ct   0x0033   100   100   005    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x000b   100   100   067    Pre-fail  Always       -       0
  8 Seek_Time_Performance   0x0005   134   134   020    Pre-fail  Offline      -       32
  9 Power_On_Hours          0x0012   098   098   000    Old_age   Always       -       20476
 10 Spin_Retry_Count        0x0013   100   100   060    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       90
192 Power-Off_Retract_Count 0x0032   100   100   050    Old_age   Always       -       454
193 Load_Cycle_Count        0x0012   100   100   050    Old_age   Always       -       454
194 Temperature_Celsius     0x0002   141   141   000    Old_age   Always       -       39 (Min/Max 19/53)
196 Reallocated_Event_Count 0x0032   100   100   000    Old_age   Always       -       0
197 Current_Pending_Sector  0x0022   100   100   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0008   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x000a   200   253   000    Old_age   Always       -       0

Сегодня уже не доступен один с винчестера - думаю, что его периодические пропадания из системы приводили к ошибкам при импорте пула. Ошибка была аппаратной и совпадала с обновлением системы.