Re: [PATCH 06/11] libata-eh: implement BMDMA EH

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

 



On Llu, 2006-05-15 at 22:59 +0900, Tejun Heo wrote:
> I see.  But even with the shared IRQ, unconditionally clearing IRQ for
> short duration wouldn't cause much problem, would it?

Clearing in what sense. If you just clear it then you may well just get
another one. If you ack it on the hardware then you need to recover
anything that may be lost before the next IRQ.

Wouldn't think its a big problem with BMDMA at all. If a given channel
interrupts us then we know what state it is in and we also know there
are no other outstanding commands even possible on the device. Since you
freeze the device not the channel (at least if I read the code right for
native mode paths) this ought to be fine. Legacy mode you freeze the
channel but there is a per channel IRQ (and the per channel host needs
fixing anyway).

The same need to clean up is true btw of PIO. Several controllers have
errata if you read a control register during a PIO transfer so you must
halt the PIO block transfer first. Intel PIIX4/440MX have this problem.

> @ Out of curiosity, how old does a controller have to be to not have the
> ctl shadow register?

You'll find controllers today that don't appear to have one (eg cf
flash)


-
: 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