lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 19 Feb 2009 18:55:21 -0600
From:	Robert Hancock <hancockrwd@...il.com>
To:	linux-kernel@...r.kernel.org
Cc:	Andreas Mohr <andi@...as.de>, linux-kernel@...r.kernel.org
Subject:  Re: Is interrupt priority supported ?

Jose Luis Marchetti wrote:
>> it has been for a looong time (those things tend to almost
>> get outdated already -
>> witness the floppy controller misery):
> 
> He he, I am from the same era..., I appreciate your answer, but I am afraid your suggestion is not exactly what I was expecting.
> The tools you mention appears to act on the hardware level, not on Linux by itself, they apply only to x86 processors ( as you can see by the name ), and I am not running Linux in one of those processors.
> Roughly, this is what I have seen in other OSs that support interrupt priority:
> Imagine a table with interrupt IDs, in my example they are in decreased priority order:
> interrupt priority table:
> Serial,
> Ethernet,
> Keyboard,
> etc...
> Then, when one interrupt happen, lets say the Ethernet, the OS disable all lower priority interrupts ( keyboard in my example ), but allow the Serial interrupt nest into the Ethernet interrupt.
> In my example the serial is the highest priority interrupt and no one could nest into it.

It doesn't really work that way in Linux. Normally disabling interrupts 
is all or nothing. Whether or not other devices can cause interrupts 
during an interrupt handler execution by default is a bit 
platform-dependent, I think (unless the driver requests IRQF_DISABLED 
which requests that other interrupts should not run).

Normally in Ethernet drivers these days only very minimal processing is 
done during the interrupt handler, the rest is deferred to softirq 
context which runs with interrupts enabled so other interrupts can 
happen. That's not to say that all Ethernet drivers are so well-behaved, 
however, especially if they haven't been updated to use NAPI. (In the 
NAPI case, the driver disables further interrupts from the device until 
the softirq is able to run and process the packets.) In your case it 
seems likely that yours is not behaving so well, as one would expect the 
interrupt handler to complete in less than the time  it takes one 
character to arrive on the serial port..

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ