Re: ZFS DEADLKRES - AHCI blocks on ICH7M

From: Marcin Cieslak <saper_at_saper.info>
Date: Wed, 21 Apr 2010 08:00:22 +0000 (UTC)
Dnia 08.04.2010 Attilio Rao <attilio_at_freebsd.org> napisaƂ/a:
> This may be a false positive.
> May you please try the following patch and report if you can fix it
> does fix it or not?:
> http://www.freebsd.org/~attilio/Sandvine/deadlkres/deadlkres-blessed.diff

Thanks for your help. I have applied this patch and I am still getting
the deadlock (today it was after 1802544 ticks). 

But there is more:

I am running r203753 on one of those "AHCI disabled by default"
laptops (Sony VGN-SZ5MN/B). I have reset the BIOS completely
(by removing the CMOS battery for a moment) and it seemingly
fixed the problem. I have tested this and I found out:

- in ATA emulation mode things are fine. /etc/periodic/daily
  completes normally.

- in AHCI mode /etc/periodic/daily hangs on any disk operation
  even dumping core is impossible from the ddb(4). 

  I have re-enabled AHCI again and tested with your patch:
  /etc/periodic/daily and svnsync running in parallel hanged
  after some longer time and deadlkres kicked in.

I presume deadlkres is properly detecting threads that hanged
waiting for the disk response. This laptop has the ICH7M controller
(in ATA emulation mode):

atapci0: <Intel ICH7 UDMA100 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0x1810-0x181f at device 31.1 on pci0
ata0: <ATA channel 0> on atapci0
ata0: [ITHREAD]
atapci1: <Intel ICH7M SATA150 controller> port 0x18d0-0x18d7,0x18c4-0x18c7,0x18c8-0x18cf,0x18c0-0x18c3,0x18b0-0x18bf mem 0xf8644400-0xf86447ff irq 22 at device 31.2 on pci0
atapci1: [ITHREAD]
ata2: <ATA channel 0> on atapci1
ata2: [ITHREAD]
ata3: <ATA channel 1> on atapci1
ata3: [ITHREAD]

in AHCI mode it says:

atapci0: <Intel ICH7 UDMA100 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0x1810-0x181f at device 31.1 on pci0
ata0: <ATA channel 0> on atapci0
ata0: [ITHREAD]
ahci0: <Intel ICH7M AHCI SATA controller> port 0x18d0-0x18d7,0x18c4-0x18c7,0x18c8-0x18cf,0x18c0-0x18c3,0x18b0-0x18bf mem 0xf8644400-0xf86447ff irq 22 at device 31.2 on pci0
ahci0: [ITHREAD]
ahci0: AHCI v1.10 with 4 1.5Gbps ports, Port Multiplier not supported
ahcich0: <AHCI channel> at channel 0 on ahci0
ahcich0: [ITHREAD]
ahcich1: <AHCI channel> at channel 2 on ahci0
ahcich1: [ITHREAD]

I am using this in the kernel config:

device          ata
device          atadisk         # ATA disk drives
device          ataraid         # ATA RAID drives
device          atapicd         # ATAPI CDROM drives
device          atapifd         # ATAPI floppy drives
device          atapist         # ATAPI tape drives
options         ATA_STATIC_ID   # Static device numbering
device          ahci      

-- 
              << Marcin Cieslak // saper_at_saper.info >>
Received on Wed Apr 21 2010 - 06:00:34 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:02 UTC