make kernel ignore broken SATA disk

Stefan Bethke stb at lassitu.de
Sun Apr 12 14:57:10 UTC 2020



> Am 12.04.2020 um 16:45 schrieb Eugene Grosbein <eugen at grosbein.net>:
> 
> 12.04.2020 21:37, Stefan Bethke wrote:
> 
>> I have a server I don't have physical access to right now, which has a broken SATA disk that produces mostly errors (but not entirely).
>> 
>> The disk has two partitions that are part of a zpool each. I can't bring the system up with this disk being online, because ZFS is trying its darndest to use it.
>> 
>> I already renamed the GPT partitions in the hope that ZFS would not find them anymore, but it does.
>> 
>> I can't gpart destroy -f ada1 because "device busy".
>> 
>> Is there a way, ideally in the loader, to tell the kernel to ignore ada1 and/or ahcich5? Or can I force ZFS some other way to ignore the disk? I do have a spare disk I can use to replace the failed one, but I can't get the machine into a state where I could even issue the zpool replace command.
> 
> It depends on the HDD controller the disk is attached to. What controller and driver does it have?

This is from an identlical machine without disk issues:

# camcontrol devlist
<ST3000DM001-1CH166 CC27>          at scbus4 target 0 lun 0 (ada0,pass0)
<ST3000DM001-1CH166 CC27>          at scbus5 target 0 lun 0 (ada1,pass1)
<ST3000DM001-1CH166 CC27>          at scbus6 target 0 lun 0 (ada2,pass2)
<AHCI SGPIO Enclosure 2.00 0001>   at scbus8 target 0 lun 0 (pass3)
# pciconf -lv
...
ahci0 at pci0:0:23:0:	class=0x010601 card=0x088415d9 chip=0xa1028086 rev=0x31 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Q170/Q150/B150/H170/H110/Z170/CM236 Chipset SATA Controller [AHCI Mode]'
    class      = mass storage
    subclass   = SATA
...

dmesg:
ahci0: <Intel Sunrise Point AHCI SATA controller> port 0xf050-0xf057,0xf040-0xf043,0xf020-0xf03f mem 0xdf410000-0xdf411fff,0xdf41e000-0xdf4
1e0ff,0xdf41d000-0xdf41d7ff irq 16 at device 23.0 on pci0
ahci0: AHCI v1.31 with 8 6Gbps ports, Port Multiplier not supported
ahcich0: <AHCI channel> at channel 0 on ahci0
ahcich1: <AHCI channel> at channel 1 on ahci0
ahcich2: <AHCI channel> at channel 2 on ahci0
ahcich3: <AHCI channel> at channel 3 on ahci0
ahcich4: <AHCI channel> at channel 4 on ahci0
ahcich5: <AHCI channel> at channel 5 on ahci0
ahcich6: <AHCI channel> at channel 6 on ahci0
ahcich7: <AHCI channel> at channel 7 on ahci0
ahciem0: <AHCI enclosure management bridge> on ahci0

ada0 at ahcich4 bus 0 scbus4 target 0 lun 0
ada0: <ST3000DM001-1CH166 CC27> ACS-2 ATA SATA 3.x device
ada0: Serial Number Z1F4GVC3
ada0: 600.000MB/s transfers (SATA 3.x, UDMA6, PIO 8192bytes)
ada0: Command Queueing enabled
ada0: 2861588MB (5860533168 512 byte sectors)
ada0: quirks=0x1<4K>
ada1 at ahcich5 bus 0 scbus5 target 0 lun 0
ada1: <ST3000DM001-1CH166 CC27> ACS-2 ATA SATA 3.x device
ada1: Serial Number W1F5180B
ada1: 600.000MB/s transfers (SATA 3.x, UDMA6, PIO 8192bytes)
ada1: Command Queueing enabled
ada1: 2861588MB (5860533168 512 byte sectors)
ada1: quirks=0x1<4K>
ada2 at ahcich6 bus 0 scbus6 target 0 lun 0
ada2: <ST3000DM001-1CH166 CC27> ACS-2 ATA SATA 3.x device
ada2: Serial Number Z1F4EJEQ
ada2: 600.000MB/s transfers (SATA 3.x, UDMA6, PIO 8192bytes)
ada2: Command Queueing enabled
ada2: 2861588MB (5860533168 512 byte sectors)
ada2: quirks=0x1<4K>


Stefan

--
Stefan Bethke <stb at lassitu.de>   Fon +49 151 14070811

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 529 bytes
Desc: Message signed with OpenPGP
URL: <http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20200412/9c48a8d1/attachment.sig>


More information about the freebsd-stable mailing list