Messages in this thread | | | Date | Tue, 26 Apr 2011 15:38:24 +0300 | From | Gleb Natapov <> | Subject | RCU+KVM: making CPU guest mode a quiescent state. |
| |
Hello Paul,
I have a question about RCU + KVM. KVM does not hold any references to RCU protected data when it switches CPU into a guest mode. In fact switching to a guest mode is very similar to exiting to userspase from RCU point of view. In addition CPU may stay in a guest mode for quite a long time (up to one time slice). It looks like it will be beneficial to treat guest mode as quiescent state, just like user-mode execution. How can this be done? I was trying to find how RCU knows about cpu entering user-mode, but it seems that it does this by checking CPU mode in a timer interrupt (update_process_times()->rcu_check_callbacks()). This will not work for guest mode detection since timer interrupt will kick CPU out of a guest mode and timer interrupt will always see CPU in kernel mode. Do we have a simple function to call to notify RCU that CPU passed quiescent state which we can call just before entering guest?
-- Gleb.
| |