[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
BOUNCE rtl@rtlinux.org: Approval required: Non-member submissionfrom [Stefano Miotto <miotto@control.dsi.unifi.it>] (fwd)
- To: rtl@rtlinux.org
- Subject: BOUNCE rtl@rtlinux.org: Approval required: Non-member submissionfrom [Stefano Miotto <miotto@control.dsi.unifi.it>] (fwd)
- From: Der Herr Hofrat <der.herr@hofr.at>
- Date: Thu, 24 May 2001 10:59:26 +0200 (CEST)
>From owner-rtl Thu May 24 03:38:20 2001
Received: from control.dsi.unifi.it (control.dsi.unifi.it [150.217.15.66])
by hq.fsmlabs.com (8.11.2/8.11.2) with SMTP id f4O9cJP14801
for <rtl@rtlinux.org>; Thu, 24 May 2001 03:38:19 -0600
Received: (qmail 23789 invoked by uid 7802); 24 May 2001 09:33:13 -0000
Received: from localhost (sendmail-bs@127.0.0.1)
by localhost with SMTP; 24 May 2001 09:33:13 -0000
Date: Thu, 24 May 2001 11:33:13 +0200 (CEST)
From: Stefano Miotto <miotto@control.dsi.unifi.it>
cc: Realtime Linux <rtl@rtlinux.org>
Subject: Re: [rtl] thread scheduling and interrupts
In-Reply-To: <00ff01c0e382$d392a2b0$0b00005a@hprini>
Message-ID: <Pine.LNX.4.32.0105241127550.23727-100000@control.dsi.unifi.it>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
On Wed, 23 May 2001, Rini van Zetten wrote:
> Hi all,
>
> I' ve a problem regarding scheduling tasks. let me explain my software :
>
> If have one low priority task which consumes a large part of cpu time.
> If have one high priority task which is started by a interrupt routine and
> do a little processing.
> If have an interrupt routine which wakes up the high priority task.
>
> The problem is:
>
> When the interrupt occurs, the high priority task is fired. runs until it
> goes asleep again. after this the low priority task get running again (it
> was stopped by the interrupt) BUT the interrupt routine is not finished yet.
> After the low priority task falls asleep, and eventualy the interrupt
> routine ends.
>
> How can i let the interrupt routine ends immediately ???? (if the interrupt
> routine is not finished, new interrups are blocked);
>
> Rini
In my code I use rtl_hard_enable_irq(port_irq) to be sure a new interrupt
on that port will be handled even if the previous one is not finished yet.
Stefano.