All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: linux-kernel@vger.kernel.org, tony@bakeyournoodle.com,
	paulus@samba.org, dino@in.ibm.com, tytso@us.ibm.com,
	dvhltc@us.ibm.com, antonb@us.ibm.com, rostedt@goodmis.org,
	niv@us.ibm.com
Subject: Re: [PATCH, RFC] hacks to allow -rt to run kernbench on POWER
Date: Mon, 29 Oct 2007 13:26:17 -0700	[thread overview]
Message-ID: <20071029202617.GF8824@linux.vnet.ibm.com> (raw)
In-Reply-To: <1193688468.9928.30.camel@pasglop>

On Tue, Oct 30, 2007 at 07:07:48AM +1100, Benjamin Herrenschmidt wrote:
> 
> On Mon, 2007-10-29 at 11:50 -0700, Paul E. McKenney wrote:
> > Hello!
> > 
> > A few random patches that permit POWER to pass kernbench on -rt.
> > Many of these have more focus on expediency than care for correctness,
> > so might best be thought of as workarounds than as complete solutions.
> > There are still issues not addressed by this patch, including:
> > 
> > o	kmem_cache_alloc() from non-preemptible context during
> > 	bootup (xics_startup() building the irq_radix_revmap()).
> > 
> > o	unmap_vmas() freeing pages with preemption disabled.
> > 	Might be able to address this by linking the pages together,
> > 	then freeing them en masse after preemption has been re-enabled,
> > 	but there is likely a better approach.
> > 
> > Thoughts?
> 
> I see a lot of case where you add preempt_disable/enable around areas
> that have the PTE lock held...
> 
> So in -rt, spin_lock doesn't disable preempt ? I'm a bit worried...
> there are some strong requirements that anything within that lock is not
> preempted, so zap_pte_ranges() is the obvious ones but all of them would
> need to be addressed.

Right in one!  One of the big changes in -rt is that spinlock critical
sections (and RCU read-side critical sections, for that matter) are
preemptible under CONFIG_PREEMPT_RT.

And I agree that this patchset will have missed quite a few places where
additional changes are required.  Hence the word "including" above, rather
than something like "specifically".  ;-)

							Thanx, Paul

  reply	other threads:[~2007-10-29 20:26 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-10-29 18:50 [PATCH, RFC] hacks to allow -rt to run kernbench on POWER Paul E. McKenney
2007-10-29 20:07 ` Benjamin Herrenschmidt
2007-10-29 20:26   ` Paul E. McKenney [this message]
2007-10-29 20:37     ` Benjamin Herrenschmidt
2007-10-29 21:16       ` Paul E. McKenney
2007-10-31 20:54   ` Darren Hart
2007-10-31 21:15     ` Benjamin Herrenschmidt
2007-11-01 15:50       ` Paul E. McKenney
2007-12-13  3:56 ` Steven Rostedt
2007-12-13  6:10   ` Paul E. McKenney
2007-12-13 12:52     ` Steven Rostedt
2007-12-13 18:25       ` Paul E. McKenney

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=20071029202617.GF8824@linux.vnet.ibm.com \
    --to=paulmck@linux.vnet.ibm.com \
    --cc=antonb@us.ibm.com \
    --cc=benh@kernel.crashing.org \
    --cc=dino@in.ibm.com \
    --cc=dvhltc@us.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=niv@us.ibm.com \
    --cc=paulus@samba.org \
    --cc=rostedt@goodmis.org \
    --cc=tony@bakeyournoodle.com \
    --cc=tytso@us.ibm.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.