Re: [RFT] major libata update

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jeff Garzik wrote:
Tejun Heo wrote:
* can we make tags int and use -1 for invalid tag? ATA_TAG_POISON looks horrible when printed.

print with %x :)


* it would be nice to have some framework to determine whether the controller is receiving too many consecutive spurious interrupts. Say, 32 irqs in a row without intervening valid interrupts is a good reason to be suspicious about stuck IRQ. Freezing & resetting will resolve the situation in most cases.

well, there is a screaming interrupt detector in the kernel... Ideally we should strive to make sure that only happens in debug scenarios :)

AFAIK, it disables the IRQ when triggered. As stuck IRQ is something we see not so rarely with ATA devices, it would be better to deal with them more intelligently in libata, IMHO. libata has ways to recover from most of those situations.

* With NCQ, some drives generate spurious D2H FISes with I bit set as if it were executing non-NCQ commands. So, regardless of controller, we're likely to see similar problems (but sil24 does all the protocol handling and ignores such FISes by itself). This can be combined with the above freeze on too many spurious, I guess.

Interesting

D2H is interesting but the spurious SDB FIS Ric is reporting is scary. I hope something else is wrong. :(

--
tejun
-
: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux