mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Alan Cox <alan@lxorguk.ukuu.org.uk>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: "Russell King - ARM Linux" <linux@arm.linux.org.uk>,
	"Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>,
	"Rusty Russell" <rusty@rustcorp.com.au>,
	"David Brownell" <dbrownell@users.sourceforge.net>,
	"Eric Miao" <eric.y.miao@gmail.com>,
	"Peter Zijlstra" <a.p.zijlstra@chello.nl>,
	"John Stultz" <johnstul@us.ibm.com>,
	"Nicolas Pitre" <nico@marvell.com>,
	"Jamie Lokier" <jamie@shareable.org>,
	LKML <linux-kernel@vger.kernel.org>,
	"Remy Bohmer" <linux@bohmer.net>,
	"Hugh Dickins" <hugh.dickins@tiscali.co.uk>,
	linux-arm-kernel@lists.infradead.org,
	"Andrea Gallo" <andrea.gallo@stericsson.com>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"Linus Torvalds" <torvalds@linux-foundation.org>,
	"Ingo Molnar" <mingo@elte.hu>
Subject: Re: Get rid of IRQF_DISABLED - (was [PATCH] genirq: warn about IRQF_SHARED|IRQF_DISABLED)
Date: Mon, 30 Nov 2009 23:30:35 +0000	[thread overview]
Message-ID: <20091130233035.2a404f62@lxorguk.ukuu.org.uk> (raw)
In-Reply-To: <alpine.LFD.2.00.0911302255590.24119@localhost.localdomain>

> Either that or we decide to push such beasts into the threaded irq
> space to keep them working until the last card hits the trashcan. I
> know that this would still need to disable the interrupt on the PIC
> level, but we have already mechanisms for that in the threaded code.

The 8390 is essentially a single thread device so treating interrupts as
events indicating work is to be done might make sense

Unfortunately you cannot check the interrupt flags on the chip without
switching to page 0, which will cause any parallel tx to crap itself and
potentially hang the box. It's a design from single CPU days and the
programming model is solely around 'stack the register window selected,
do stuff in irq, put it back', so any parallel execution ends in tears,
even peeking to see if the IRQ is ours.

These chips still keep popping up in old boxes although the rtl8139 seems
to have exterminated them at last in all the ultra-cheap devices.

Pushing them into threaded IRQ space with PIC masking seems to make
complete sense. The wonderously gothic IRQ magic becomes a mutex, the IRQ
handler may sleep blocking the IRQ during a transmit and the transmit
path may block during an IRQ thread execution. Reset works as a mutex and
all the crap and magic goes away.


  reply	other threads:[~2009-11-30 23:30 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20091127195857.GB28193@n2100.arm.linux.org.uk>
2009-11-27 21:10 ` [PATCH] warn about shared irqs requesting IRQF_DISABLED registered with setup_irq Uwe Kleine-König
2009-11-27 22:18   ` Thomas Gleixner
2009-11-28 20:03     ` Uwe Kleine-König
2009-11-28 21:50       ` Thomas Gleixner
2009-11-28 22:13         ` David Brownell
2009-11-29  2:31         ` Jamie Lokier
2009-11-29 10:26           ` Uwe Kleine-König
2009-11-29 15:18             ` Jamie Lokier
2009-11-29 15:27               ` Russell King - ARM Linux
2009-11-30 20:39                 ` Jamie Lokier
2009-11-30  9:28               ` Uwe Kleine-König
2009-11-30  9:54               ` Thomas Gleixner
2009-11-28 22:09       ` David Brownell
2009-11-30 10:47   ` [PATCH] genirq: warn about IRQF_SHARED|IRQF_DISABLED at the right place Uwe Kleine-König
2009-11-30 13:54     ` Get rid of IRQF_DISABLED - (was [PATCH] genirq: warn about IRQF_SHARED|IRQF_DISABLED) Thomas Gleixner
2009-11-30 14:03       ` Peter Zijlstra
2009-11-30 14:24         ` Thomas Gleixner
2009-11-30 14:47           ` Alan Cox
2009-11-30 15:01             ` Russell King - ARM Linux
2009-11-30 15:32               ` Alan Cox
2009-11-30 15:43                 ` Russell King - ARM Linux
2009-11-30 20:15               ` Andrew Victor
2009-11-30 20:53               ` David Brownell
2009-11-30 20:38             ` David Brownell
2009-12-01  1:42               ` Andy Walls
2009-11-30 19:59           ` Benjamin Herrenschmidt
2009-11-30 21:31             ` Thomas Gleixner
2009-11-30 21:42               ` Benjamin Herrenschmidt
2009-11-30 21:54                 ` Thomas Gleixner
2009-11-30 14:37       ` Russell King - ARM Linux
2009-11-30 14:39         ` Russell King - ARM Linux
2009-11-30 17:48           ` Thomas Gleixner
2009-11-30 14:51         ` Alan Cox
2009-11-30 21:59           ` Thomas Gleixner
2009-11-30 23:30             ` Alan Cox [this message]
2009-11-30 15:38         ` Nicolas Pitre
2009-11-30 17:46         ` Thomas Gleixner
2009-11-30 19:51       ` Uwe Kleine-König
2009-11-30 21:23         ` Thomas Gleixner
2009-11-30 20:21     ` [PATCH] genirq: warn about IRQF_SHARED|IRQF_DISABLED at the right place David Brownell
2009-11-30 20:27       ` Uwe Kleine-König
2010-01-12 15:42     ` [RESEND PATCH] " Uwe Kleine-König

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=20091130233035.2a404f62@lxorguk.ukuu.org.uk \
    --to=alan@lxorguk.ukuu.org.uk \
    --cc=a.p.zijlstra@chello.nl \
    --cc=akpm@linux-foundation.org \
    --cc=andrea.gallo@stericsson.com \
    --cc=dbrownell@users.sourceforge.net \
    --cc=eric.y.miao@gmail.com \
    --cc=hugh.dickins@tiscali.co.uk \
    --cc=jamie@shareable.org \
    --cc=johnstul@us.ibm.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=linux@bohmer.net \
    --cc=mingo@elte.hu \
    --cc=nico@marvell.com \
    --cc=rusty@rustcorp.com.au \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.org \
    --cc=u.kleine-koenig@pengutronix.de \
    /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®