|
|
|
|
|
|
|
|
|
|
xen-devel
RE: [Xen-devel] [PATCH 6/10] Allow vcpu to pause self
>From: Keir Fraser [mailto:keir@xxxxxxxxxxxxx]
>Sent: 2007年7月12日 16:01
>
>On 12/7/07 08:44, "Keir Fraser" <keir@xxxxxxxxxxxxx> wrote:
>
>> How about doing the whole suspend/resume in dom0/vcpu0 context?
>Why switch
>> to a softirq at all? You can force dom0/vcpu0 onto cpu0 temporarily by
>> wrapping the suspend/resume in a pair of calls to vcpu_set_affinity().
>
>You may need to temporarily rewrite ->schedule_tail as well, to regain
>control after the scheduling softirq.
>
> -- Keir
Yes, schedule_tail has to be overridden with a special stub to continue
with previous suspend flow. Maybe we can make it generic, for example,
to create a new vcpu_migrate_and_continue, which basically:
- save continue point to vcpu structure
- override schedule_tail with a helper function
- switch out
Then that helper function jumps to continue point on new processor. At
finish, reset stack and recover schedule_tail.
Is it sounds like the way?
Thanks,
Kevin
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|