From: "Paul E. McKenney" <paulmck@us.ibm.com>
To: Jim Houston <jim.houston@comcast.net>
Cc: linux-kernel@vger.kernel.org,
Dipankar Sarma <dipankar@in.ibm.com>,
Manfred Spraul <manfred@colorfullife.com>,
Andrew Morton <akpm@osdl.org>,
William Lee Irwin III <wli@holomorphy.com>,
Jack Steiner <steiner@sgi.com>,
Jesse Barnes <jbarnes@engr.sgi.com>,
rusty@rustcorp.com.au
Subject: Re: [RFC&PATCH] Alternative RCU implementation
Date: Thu, 2 Sep 2004 09:38:54 -0700 [thread overview]
Message-ID: <20040902163854.GC1258@us.ibm.com> (raw)
In-Reply-To: <1094043719.986.51.camel@new.localdomain>
On Wed, Sep 01, 2004 at 09:02:00AM -0400, Jim Houston wrote:
> On Tue, 2004-08-31 at 23:53, Paul E. McKenney wrote:
> > On Mon, Aug 30, 2004 at 11:22:49PM -0400, Jim Houston wrote:
> > > On Mon, 2004-08-30 at 14:52, Paul E. McKenney wrote:
> > > > How does the rest of the kernel work with all interrupts to
> > > > a particular CPU shut off? For example, how do you timeslice?
> > >
> > > It's a balancing act. In some cases we just document the
> > > missing functionality. If the local timer is disabled on a cpu,
> > > all processes are SCHED_FIFO. In the case of Posix timers, we
> > > move timers to honor the procesor shielding an the process affinity.
> >
> > I have to ask... When you say that you move the timers, you mean that
> > non-realtime CPU 1 managers timers for realtime CPU 0, so that CPU 1
> > is (effectively) taking CPU 0's timer interrupts?
>
> Hi Paul,
>
> That is part of the idea. There are lots of timers which we don't
> expect to have realtime behavior.
>
> There are also services like Posix timers and nanosleep() where we want
> very predictable behavior. If a process does a nanosleep(), we queue
> that timer on the local cpu. If process affinity is changed, we will
> move the timer to a cpu where the process is allowed to run.
>
> We have separate queues for high resolution timers. If the local queue
> is empty, we shutdown the timer.
Hello, Jim,
How do you mark a given CPU as being in realtime mode? Or is the
timer-shutdown decision based on the presence of a realtime process
runnable on the given CPU or some such?
Still trying to figure out a way to make this work without adding
overhead to rcu_read_unlock()...
Thanx, Paul
next prev parent reply other threads:[~2004-09-02 16:44 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <m3brgwgi30.fsf@new.localdomain>
2004-08-30 0:43 ` [RFC&PATCH] Alternative RCU implementation Paul E. McKenney
2004-08-30 17:13 ` Jim Houston
2004-08-30 17:38 ` Dipankar Sarma
2004-09-01 0:10 ` Jim Houston
2004-09-01 0:57 ` Paul E. McKenney
2004-08-30 18:52 ` Paul E. McKenney
2004-08-31 3:22 ` Jim Houston
2004-09-01 3:53 ` Paul E. McKenney
2004-09-01 13:02 ` Jim Houston
2004-09-02 16:38 ` Paul E. McKenney [this message]
2004-09-02 18:54 ` Jim Houston
2004-09-02 21:20 ` Manfred Spraul
2004-09-03 1:19 ` Jim Houston
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=20040902163854.GC1258@us.ibm.com \
--to=paulmck@us.ibm.com \
--cc=akpm@osdl.org \
--cc=dipankar@in.ibm.com \
--cc=jbarnes@engr.sgi.com \
--cc=jim.houston@comcast.net \
--cc=linux-kernel@vger.kernel.org \
--cc=manfred@colorfullife.com \
--cc=rusty@rustcorp.com.au \
--cc=steiner@sgi.com \
--cc=wli@holomorphy.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 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.