Re: [RFC PATCH v2] Add rcu user eqs exception hooks for async pagefault

From: Gleb Natapov
Date: Wed Nov 28 2012 - 08:56:07 EST


On Wed, Nov 28, 2012 at 01:55:42PM +0100, Frederic Weisbecker wrote:
> > So I still want to remove it. And later if it shows that we really needs
> > rcu somewhere in this code path, maybe we could use RCU_NONIDLE() to
> > protect it. ( The suspicious RCU usage reported in commit
> > c5e015d4949aa665 seems related to schedule(), which is not in the code
> > path if we are in cpu idle eqs )
>
> Yes but if rcu_irq_*() calls are fine to be called there, and I
> believe they are because exception_enter() exits the user mode, we
> should start to protect there right now instead of waiting for a
> potential future warning of illegal RCU use.
>
Async page not present is not much different from regular page fault
exception when it happens not on idle task (regular #PF cannot happen
on idle task), but code have a special handling for idle task. So why
do you think rcu_irq_*() is required here, but not in page fault
handler?

> >
> > I think we still need Gleb's patch about the idle check in
> > kvm_async_pf_task_wait(), and maybe another patch for the
> > exit_idle()/enter_idle() issue.
>
> Right.
>
Done.

--
Gleb.
--
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/