public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Pavel Pisa <pisa@cmp.felk.cvut.cz>
To: Alan Cox <alan@lxorguk.ukuu.org.uk>, Linus Torvalds <torvalds@osdl.org>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Ingo Molnar <mingo@redhat.com>
Subject: Re: VM86 interrupt emulation breakage and FIXes for 2.6.x kernel series
Date: Sat, 11 Dec 2004 03:30:48 +0100	[thread overview]
Message-ID: <200412110330.48993.pisa@cmp.felk.cvut.cz> (raw)
In-Reply-To: <1102726628.4948.1.camel@localhost.localdomain>

On Saturday 11 December 2004 01:57, you wrote:
> On Sad, 2004-12-11 at 01:23, Linus Torvalds wrote:
> > > Until the 10,000th event it actually seems to work rather happily
> > > without that change.
> > 
> > I suspect you never tried the level-triggered case.
> 
> Level triggered has never been supported. Putting a single disable_irq
> in doesn't change the fact it doesn't work because the IRQ is never
> re-enabled.

The real very first reason for disable_irq introduction has been
infinite list of unbalanced enable_irq calls reported in the syslog,
caused by enable_irq(irqnumber) call from get_and_reset_irq().
It has been there for ages.
Not nice behavior. You see 100000 of such messages and then
processing stops on IRQ_NONE catch. I am voting for benefit of
our _very_ small VM86 IRQ emulation users community, that actual
state is many times better, than previous state. It is usable now.
I believe, that even level triggered interrupts should work
now without problems. We will give this feature real load testing.
We use it for educational DC motor control. 10kHz of IRQs.
We know, that even 2.6.x with preempt cannot handle that
without IRQ misses. But it is nice test to see on a osciloscope,
how userspace task reacts on IRQ events. And I think,
that 2.6.x kernel can evolve to one millisecond guaranteed response
time one day. It would be great. We have experience with real
drivers and writting code for RT-Linux as well.
I do not believe, that 2.6 kernels could get under 300 us
in reasonable future, so somethink like RT-Linux or dedicated
MCU would be still required for more demanding tasks.
But one millisecond could be enough for many complex control tasks.

Thanks for care

                Pavel


  reply	other threads:[~2004-12-11  2:29 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-12-09 13:59 VM86 interrupt emulation breakage and FIXes for 2.6.x kernel series Pavel Pisa
2004-12-09 16:09 ` Linus Torvalds
2004-12-10 21:05 ` Alan Cox
2004-12-10 22:55   ` Linus Torvalds
2004-12-10 23:58     ` Alan Cox
2004-12-11  1:23       ` Linus Torvalds
2004-12-11  0:57         ` Alan Cox
2004-12-11  2:30           ` Pavel Pisa [this message]
2004-12-11  4:21           ` Linus Torvalds
2004-12-11 14:19             ` Alan Cox
2004-12-11 18:45               ` Linus Torvalds
2004-12-11 18:46                 ` Alan Cox
2005-04-26  8:49                   ` [PATCH] Linux 2.6.x VM86 interrupt emulation fixes - the second round Pavel Pisa
2004-12-11  2:07     ` VM86 interrupt emulation breakage and FIXes for 2.6.x kernel series Pavel Pisa

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=200412110330.48993.pisa@cmp.felk.cvut.cz \
    --to=pisa@cmp.felk.cvut.cz \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=torvalds@osdl.org \
    /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