Merge tag 'arc-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc
[firefly-linux-kernel-4.4.55.git] / drivers / lguest / hypercalls.c
index 83511eb0923d2f908a9e884d6470d493548e5cc0..19a32280731db99e05661d3ae5c46b6a8f168dd2 100644 (file)
@@ -117,9 +117,6 @@ static void do_hcall(struct lg_cpu *cpu, struct hcall_args *args)
                /* Similarly, this sets the halted flag for run_guest(). */
                cpu->halted = 1;
                break;
-       case LHCALL_NOTIFY:
-               cpu->pending_notify = args->arg1;
-               break;
        default:
                /* It should be an architecture-specific hypercall. */
                if (lguest_arch_do_hcall(cpu, args))
@@ -189,7 +186,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 (cpu->pending_notify)
+               if (cpu->pending.trap)
                        break;
        }
 }
@@ -214,10 +211,9 @@ static void initialize(struct lg_cpu *cpu)
 
        /*
         * The Guest tells us where we're not to deliver interrupts by putting
-        * the range of addresses into "struct lguest_data".
+        * the instruction address into "struct lguest_data".
         */
-       if (get_user(cpu->lg->noirq_start, &cpu->lg->lguest_data->noirq_start)
-           || get_user(cpu->lg->noirq_end, &cpu->lg->lguest_data->noirq_end))
+       if (get_user(cpu->lg->noirq_iret, &cpu->lg->lguest_data->noirq_iret))
                kill_guest(cpu, "bad guest page %p", cpu->lg->lguest_data);
 
        /*
@@ -280,7 +276,7 @@ void do_hypercalls(struct lg_cpu *cpu)
         * NOTIFY to the Launcher, we want to return now.  Otherwise we do
         * the hypercall.
         */
-       if (!cpu->pending_notify) {
+       if (!cpu->pending.trap) {
                do_hcall(cpu, cpu->hcall);
                /*
                 * Tricky point: we reset the hcall pointer to mark the