diff options
author | Glauber de Oliveira Costa <gcosta@redhat.com> | 2008-01-07 11:05:36 -0200 |
---|---|---|
committer | Rusty Russell <rusty@rustcorp.com.au> | 2008-01-30 22:50:13 +1100 |
commit | 5e232f4f428c4266ba5cdae9f23ba19a0913dcf9 (patch) | |
tree | 591e21cb88959373e495eac7eb8ee2c2865771ae /drivers/lguest/hypercalls.c | |
parent | 4665ac8e28c30c2a015c617c55783c0bf3a49c05 (diff) |
lguest: make pending notifications per-vcpu
this patch makes the pending_notify field, used to control
pending notifications, per-vcpu, instead of per-guest
Signed-off-by: Glauber de Oliveira Costa <gcosta@redhat.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Diffstat (limited to 'drivers/lguest/hypercalls.c')
-rw-r--r-- | drivers/lguest/hypercalls.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/lguest/hypercalls.c b/drivers/lguest/hypercalls.c index ab70bbebdf2..be8f0468576 100644 --- a/drivers/lguest/hypercalls.c +++ b/drivers/lguest/hypercalls.c @@ -91,7 +91,7 @@ static void do_hcall(struct lg_cpu *cpu, struct hcall_args *args) cpu->halted = 1; break; case LHCALL_NOTIFY: - lg->pending_notify = args->arg1; + cpu->pending_notify = args->arg1; break; default: /* It should be an architecture-specific hypercall. */ @@ -154,7 +154,7 @@ static void do_async_hcalls(struct lg_cpu *cpu) /* Stop doing hypercalls if they want to notify the Launcher: * it needs to service this first. */ - if (lg->pending_notify) + if (cpu->pending_notify) break; } } @@ -219,7 +219,7 @@ void do_hypercalls(struct lg_cpu *cpu) /* If we stopped reading the hypercall ring because the Guest did a * NOTIFY to the Launcher, we want to return now. Otherwise we do * the hypercall. */ - if (!cpu->lg->pending_notify) { + if (!cpu->pending_notify) { do_hcall(cpu, cpu->hcall); /* Tricky point: we reset the hcall pointer to mark the * hypercall as "done". We use the hcall pointer rather than |