On Thu, 2005-07-21 at 14:04 -0400, Daniel B. wrote: > Miquel van Smoorenburg wrote: > > > In article <[EMAIL PROTECTED]>, > > Daniel B. <[EMAIL PROTECTED]> wrote: > > > >>Does anyone know why Linux can't seem to maintain a diald-dialed serial > >>PPP connection while performing lots of disk I/O, especially on a PIO-mode > >>IDE disk? > > > > > > Because the IDE driver turns off interrupt processing completely > > when issuing commands to / reading data from the drive. With DMA, > > you don't really notice, in PIO mode, you do .. > > If it turns off interrupt processing completely, how would, say, > keyboard and timer interrupts get processed? Wouldn't I be seeing > keystrokes getting dropped occasionally?
It blocks them, ofcourse. The hardware still sets the interrupt bit. > > Do you mean that interrupt handling is _suspended_ when writing > to/reading from the drive (that is, other interrupts aren't ignored > entirely; just deferred)? Same difference :) > > > >>Does the kernel not handle serial port interrupts with higher priority > >>than disk interrupts to make sure that serial data doesn't overrun > >>buffers? > > > > > > Because the IDE driver simply turns all interrupts *off* ... > > I would think that even if the kernel IDE code had to disable > interrupts while performing a PIO-mode transfer, as soon as it > re-enabled interrupts (at the end of the IDE operation), pending > interrupts would be handled. > > Does one IDE operation (in PIO mode) take so long that the > serial port buffer overflows before the disk operation is done? Indeed. > Or are pending interrupts not all processed before a subsequent > IDE operation is started? > > > > To change this, see "man hdparm", -u option. > > Well, given that the manual page says: > > -u ... Use this feature with caution: some drive/controller > combinations do not tolerate the increased I/O latencies > possible when this feature is enabled, resulting in massive > filesystem corruption. > > I'm not about to try that, since the reason I'm using PIO mode > in the first place is because I get massive file system corruption > when I use DMA mode with IDE controllers on my motherboard (Asus > A7M266-D; AMD 762(?) chipset). Have you reported this to the kernel IDE maintainers ? > > Would setting one of hdparm's sector-count options to a small value > decrease the length of time interrupts are disabled and reduce the > chances of problems with serial communication? I don't know, I try to avoid broken hardware :) Mike. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]