public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Robert Hancock <hancockr@shaw.ca>
To: "linux-os (Dick Johnson)" <linux-os@analogic.com>,
	linux-kernel <linux-kernel@vger.kernel.org>
Cc: Giampaolo Tomassoni <g.tomassoni@libero.it>
Subject: Re: R: R: How to avoid serial port buffer overruns?
Date: Fri, 18 Aug 2006 17:16:59 -0600	[thread overview]
Message-ID: <44E64A6B.8030105@shaw.ca> (raw)
In-Reply-To: <fa.f1Jp2YDS6/xT0GB2fsQq98CdRtA@ifi.uio.no>

linux-os (Dick Johnson) wrote:
> Apparently to handle these kinds of kludges, the kernel
> interrupt code was modified so that the device-driver
> code needs to returna value to the kernel core code.
> If the value is not IRQ_HANDLED, then the ISR will be
> called again. If your ISR never returns IRQ_HANDLED,
> then the kernel core code will shut you off when it
> detects a loop of (last I checked) 10,000 spins.

This isn't to handle the edge-triggered case, that return value is to 
shut off the interrupt entirely in the case of a device that is 
asserting its interrupt but no driver claims to be handling it. 
Otherwise the interrupt storm could cause the machine to simply lock up. 
It doesn't just disable that ISR either, the interrupt line is disabled 
in the interrupt controller which may disable other devices using that line.

-- 
Robert Hancock      Saskatoon, SK, Canada
To email, remove "nospam" from hancockr@nospamshaw.ca
Home Page: http://www.roberthancock.com/


       reply	other threads:[~2006-08-18 23:16 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <fa.QIapfCxFpNcj7ZdkL+1slt8AXnQ@ifi.uio.no>
     [not found] ` <fa.f1Jp2YDS6/xT0GB2fsQq98CdRtA@ifi.uio.no>
2006-08-18 23:16   ` Robert Hancock [this message]
2006-08-18 14:30 R: How to avoid serial port buffer overruns? Robert Hancock
2006-08-18 14:58 ` R: " Giampaolo Tomassoni
2006-08-18 15:34   ` linux-os (Dick Johnson)

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=44E64A6B.8030105@shaw.ca \
    --to=hancockr@shaw.ca \
    --cc=g.tomassoni@libero.it \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-os@analogic.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox