mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: David Schleef <ds@stm.lbl.gov>
To: Gerard Roudier <groudier@club-internet.fr>
Cc: Paul Ashton <lk@mailandnews.com>,
	Alan Cox <alan@lxorguk.ukuu.org.uk>,
	linux-kernel@vger.rutgers.edu
Subject: Re: Shared interrupt (lack of) handling
Date: Thu, 2 Sep 1999 14:42:51 -0700	[thread overview]
Message-ID: <19990902144251.A32648@stm.lbl.gov> (raw)
In-Reply-To: <Pine.LNX.3.95.990902205502.393A-100000@localhost>; from Gerard Roudier on Thu, Sep 02, 1999 at 09:41:48PM +0200

On Thu, Sep 02, 1999 at 09:41:48PM +0200, Gerard Roudier wrote:
> > 
> > I'd vote for changing the return value of the interrupt handlers to
> > (int), and return a I_DID_SOME_STUFF flag.  That way, if none of the
> 
> This does not make sense at all for PCI.
> 
> In PCI, INTERRUPT ARE NOT SYNCHRONISATION EVENTS!  Synchronisation events
> are PCI TRANSACTIONS in the context of ordering rules defined by the
> specs, but unfortunately only a few hardware implemented that stuff
> correctly. People that think interrupts as synchronisations events are not
> able to write PCI device drivers that will work reliably in presence of
> posted transactions. A PCI interrupt just kicks the driver code that has
> then to synchronize correctly with de device, both using PCI transactions
> and relying on PCI ordering rules (or the subset available on the involved
> hardware). 


I appear to be missing something.  What do PCI synchonization issues
have anything to do with a driver giving the OS hints?  The delivery
of interrupts to the handlers would not change, but only that messages
*might* get printk'd if an interrupt occurs and no handler thinks that
the interrupt belongs to it.  How often do spurious interrupts occur
in a correctly functioning computer that shares interrupts between,
say, a NIC and SCSI card?

One thing that you could do with the I_DID_SOME_STUFF flag is use the
statistics to reorder the execution of interrupt handlers so that the
device that causes the most interrupts gets called first.  Might be
cool, difficult to tell.




dave...


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

       reply	other threads:[~1999-09-02 22:08 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <19990902104044.A31769@stm.lbl.gov>
     [not found] ` <Pine.LNX.3.95.990902205502.393A-100000@localhost>
1999-09-02 21:42   ` David Schleef [this message]
1999-09-03 12:02   ` Richard B. Johnson
1999-09-03 18:19     ` Gerard Roudier

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=19990902144251.A32648@stm.lbl.gov \
    --to=ds@stm.lbl.gov \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=groudier@club-internet.fr \
    --cc=linux-kernel@vger.rutgers.edu \
    --cc=lk@mailandnews.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

all inboxes | Powered by JetHome®