All of lore.kernel.org
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: paulmck@us.ibm.com
Cc: linux-kernel@vger.kernel.org, mingo@elte.hu, dipankar@in.ibm.com,
	shemminger@osdl.org, rusty@au1.ibm.com
Subject: Re: [RFC] RCU and CONFIG_PREEMPT_RT progress, part 3
Date: Wed, 13 Jul 2005 15:06:38 -0400	[thread overview]
Message-ID: <1121281598.25810.14.camel@localhost.localdomain> (raw)
In-Reply-To: <20050713184800.GA1983@us.ibm.com>

On Wed, 2005-07-13 at 11:48 -0700, Paul E. McKenney wrote:
> Hello!
> 
> Ported to CONFIG_PREEMPT_RT, and it actually boots!  Running tests,

Good! :)

> working thus far.  But thought I would post the patch and get feedback
> in the meantime, since I am not sure that my approach is correct.
> The questions:
> 
> 1.	Is use of spin_trylock() and spin_unlock() in hardirq code
> 	(e.g., rcu_check_callbacks() and callees) a Bad Thing?
> 	Seems to result in boot-time hangs when I try it, and switching
> 	to _raw_spin_trylock() and _raw_spin_unlock() seems to work
> 	better.  But I don't see why the other primitives hang --
> 	after all, you can call wakeup functions in irq context in
> 	stock kernels...

I never use _raw_spin_*.  I just declare the lock as a raw_spinlock_t
and the macro's determine to use them instead.  So I just keep the
spin_lock in the code. Or do you mean that you get problems using the
spin_locks when the code is already defined as raw_spinlock_t?

> 
> 2.	Is _raw_spin_lock_irqsave() intended for general use?  Its
> 	API differs from that of spin_lock_irqsave(), so am wondering
> 	if it is internal-use-only or something.  I currently
> 	use it from process context to acquire locks shared with
> 	rcu_check_callbacks().

I would assume not, but Ingo would be better at answering this.

> 
> 3.	Since SPIN_LOCK_UNLOCKED now takes the lock itself as an
> 	argument, what is the best way to initialize per-CPU
> 	locks?  An explicit initialization function, or is there
> 	some way that I am missing to make an initializer?

Ouch, I just notice that (been using an older version for some time). 

Ingo, is this to force the initialization of the lists instead of at
runtime?


-- Steve



  reply	other threads:[~2005-07-13 19:10 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-07-13 18:48 [RFC] RCU and CONFIG_PREEMPT_RT progress, part 3 Paul E. McKenney
2005-07-13 19:06 ` Steven Rostedt [this message]
2005-07-13 20:18   ` Paul E. McKenney
2005-07-13 20:30   ` Bill Huey
2005-07-13 20:35 ` Bill Huey
2005-07-13 22:04   ` 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=1121281598.25810.14.camel@localhost.localdomain \
    --to=rostedt@goodmis.org \
    --cc=dipankar@in.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=paulmck@us.ibm.com \
    --cc=rusty@au1.ibm.com \
    --cc=shemminger@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 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.