Re: Possibly SATA related freeze killed networking and RAID
From: Phillip Susi
Date: Fri Nov 30 2007 - 13:46:21 EST
Tejun Heo wrote:
Because SFF ATA controller don't have IRQ pending bit. You don't know
whether IRQ is raised or not. Plus, accessing the status register which
clears pending IRQ can be very slow on PATA machines. It has to go
through the PCI and ATA bus and come back. So, unconditionally trying
to clear IRQ by accessing Status can incur noticeable overhead if the
IRQ is shared with devices which raise a lot of IRQs.
There HAS to be a way to determine if that device generated the
interrupt, or the interrupt can not be shared. Since the kernel said
nobody cared about the interrupt, that indicates that the sata driver
checked the status register and realized the sata chip didn't generate
the interrupt, and returned to the kernel letting it know that the
interrupt was not for it.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/