Thread (23 messages) 23 messages, 4 authors, 2007-09-27

Re: [PATCH RFC -rt] updated synchronize_all_irqs implementation

From: Paul E. McKenney <hidden>
Date: 2007-09-26 01:11:42

On Wed, Sep 26, 2007 at 01:24:47AM +0200, Peter Zijlstra wrote:
On Tue, 25 Sep 2007 16:02:45 -0400 (EDT) Steven Rostedt
[off-list ref] wrote:
quoted
quoted
This would of course require that synchronize_all_irqs() be in the
RCU code rather than the irq code so that it could access the static
wakeme_after_rcu() definition and the rcu_synchronize structure.

Thoughts?
I do like this better. Anyone else care to comment?
I'm still wondering why the IRQ users cannot user proper RCU as it
stands:
Well, that was my initial proposal.  ;-)
  rcu_read_lock();
  foo = rcu_dereference(bar);
  if (foo)
    foo();
  rcu_read_unlock();

vs

  rcu_assign(foo, NULL);
  synchronize_rcu();
For this last, it would be necessary to use SRCU -- also, not sure
we would want the IRQ handler to block this way.  Or am I missing 
something?
and the like.

The implicit rcu_read_lock() as placed in handle_IRQ_event() seems
misplaced.
OK -- where would you put them instead?  I have them covering the
call to the handler, so what am I missing here?

							Thanx, Paul
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help