From: Armin Steinhoff <armin@steinhoff.de>
To: Peter LaDow <petela@gocougs.wsu.edu>
Cc: linux-rt-users@vger.kernel.org
Subject: Re: Interrupt Bottom Half Scheduling
Date: Tue, 15 Feb 2011 09:40:22 +0100 [thread overview]
Message-ID: <4D5A3BF6.6090008@steinhoff.de> (raw)
In-Reply-To: <AANLkTinpxPMVPCw0ND_1t1orEHaYBRfEfruv1v0rws-b@mail.gmail.com>
Hi,
the scheduling is done by the CFS ?
--Armin
Peter LaDow wrote:
> On Mon, Feb 14, 2011 at 3:30 PM, Frank Rowand<frank.rowand@gmail.com> wrote:
>> On Mon, Feb 14, 2011 at 2:31 PM, Peter LaDow<petela@gocougs.wsu.edu> wrote:
>>> How is the scheduling of the hrtimers softirq thread handled?
>>>
>>> When querying the RT priority of the hrtimer softirq, I get a priority
>>> of 50. But when running a priority 99 thread, we still seem to be
>>> getting interrupted. Shouldn't the hrtimer softirq be put off until
>>> the CPU is idle or a lower priority task is running?
>> Is the hrtimer softirq executing when the priority 99 thread is spinning
>> in it's for loop? Your "jitter Due to Large Number of Timers" email
>> said that the lower priority tasks don't seem to be interrupting the
>> priority 99 thread.
> Did I? Hmm, well I mean the lower priority task with 100 threads. At
> least I think so. It is hard to tell.
>
> It seems to me that the softirq thread is the source of the problem.
> Since the tight loop is getting such a variety of times (400us of
> jitter only while the other process is running) that it does seem that
> the loop is getting interrupt.
>
>> The hardware timer interupts will interrupt the priority 99 thread. The
>> cost of these interrupts and the resultant calls to try_to_wake_up()
>> of the hrtimer softirq might be quite large considering the rate of
>> timer expires you mentioned in your first email.
> Sure, we expect the timer interrupt to interfere. But as we
> understand it, the softirq is what schedules the task switch. The top
> half only schedules the bottom half. But since the bottom half is
> priority 50, there shouldn't be any interruption of the priority 99
> expect to handle the low level IRQ.
>
>> Out of curiosity, is the system UP or SMP?
> UP. Just a single MPC5349.
>
> pete
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
next prev parent reply other threads:[~2011-02-15 8:35 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-14 22:31 Interrupt Bottom Half Scheduling Peter LaDow
2011-02-14 23:04 ` Sven-Thorsten Dietrich
2011-02-14 23:08 ` Peter LaDow
2011-02-14 23:35 ` Sven-Thorsten Dietrich
2011-02-14 23:42 ` Peter LaDow
2011-02-15 0:50 ` Sven-Thorsten Dietrich
2011-02-14 23:30 ` Frank Rowand
2011-02-15 1:10 ` Peter LaDow
2011-02-15 1:58 ` Frank Rowand
2011-02-15 2:16 ` Frank Rowand
2011-02-15 16:42 ` Peter LaDow
2011-02-15 18:38 ` Frank Rowand
2011-02-15 18:40 ` Frank Rowand
2011-02-15 19:12 ` Peter LaDow
2011-02-15 19:35 ` Frank Rowand
2011-02-16 20:18 ` Peter LaDow
2011-02-15 8:40 ` Armin Steinhoff [this message]
2011-02-15 8:23 ` 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=4D5A3BF6.6090008@steinhoff.de \
--to=armin@steinhoff.de \
--cc=linux-rt-users@vger.kernel.org \
--cc=petela@gocougs.wsu.edu \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.