Re: [v7 0/8] Reduce cross CPU IPI interference

From: Avi Kivity
Date: Thu Feb 09 2012 - 11:06:32 EST


On 02/09/2012 05:22 PM, Frederic Weisbecker wrote:
> > >
> > > Looks like there are new rcu_user_enter() and rcu_user_exit() APIs which
> > > we can use. Hopefully they subsume rcu_virt_note_context_switch() so we
> > > only need one set of APIs.
> >
> > Now that you mention it, that is a good goal. However, it requires
> > coordination with Frederic's code as well, so some investigation
> > is required. Bad things happen if you tell RCU you are idle when you
> > really are not and vice versa!
> >
> > Thanx, Paul
> >
>
> Right. Avi I need to know more about what you need. rcu_virt_note_context_switch()
> notes a quiescent state while rcu_user_enter() shuts down RCU (it's in fact the same
> thing than rcu_idle_enter() minus the is_idle_cpu() checks).

I don't know enough about RCU to say if it's okay or not (I typically
peek at the quick quiz answers). However, switching to guest mode is
very similar to exiting to user mode: we're guaranteed not to be in an
rcu critical section, and to remain so until the guest exits back to
us. What guarantees does rcu_user_enter() provide? With luck guest
entry satisifies them all.

--
error compiling committee.c: too many arguments to function

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/