lguest: make pending notifications per-vcpu
[deliverable/linux.git] / drivers / lguest / hypercalls.c
index ab70bbebdf25c235a2900d3e39374df2825fdd54..be8f0468576723bc2f20aa08f77116cdc05dec88 100644 (file)
@@ -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
This page took 0.025051 seconds and 5 git commands to generate.