diff options
Diffstat (limited to 'drivers/lguest/hypercalls.c')
-rw-r--r-- | drivers/lguest/hypercalls.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/lguest/hypercalls.c b/drivers/lguest/hypercalls.c index 51149ca14617..c29ffa19cb74 100644 --- a/drivers/lguest/hypercalls.c +++ b/drivers/lguest/hypercalls.c | |||
@@ -77,11 +77,21 @@ static void do_hcall(struct lg_cpu *cpu, struct hcall_args *args) | |||
77 | guest_set_stack(cpu, args->arg1, args->arg2, args->arg3); | 77 | guest_set_stack(cpu, args->arg1, args->arg2, args->arg3); |
78 | break; | 78 | break; |
79 | case LHCALL_SET_PTE: | 79 | case LHCALL_SET_PTE: |
80 | #ifdef CONFIG_X86_PAE | ||
81 | guest_set_pte(cpu, args->arg1, args->arg2, | ||
82 | __pte(args->arg3 | (u64)args->arg4 << 32)); | ||
83 | #else | ||
80 | guest_set_pte(cpu, args->arg1, args->arg2, __pte(args->arg3)); | 84 | guest_set_pte(cpu, args->arg1, args->arg2, __pte(args->arg3)); |
85 | #endif | ||
81 | break; | 86 | break; |
82 | case LHCALL_SET_PGD: | 87 | case LHCALL_SET_PGD: |
83 | guest_set_pgd(cpu->lg, args->arg1, args->arg2); | 88 | guest_set_pgd(cpu->lg, args->arg1, args->arg2); |
84 | break; | 89 | break; |
90 | #ifdef CONFIG_X86_PAE | ||
91 | case LHCALL_SET_PMD: | ||
92 | guest_set_pmd(cpu->lg, args->arg1, args->arg2); | ||
93 | break; | ||
94 | #endif | ||
85 | case LHCALL_SET_CLOCKEVENT: | 95 | case LHCALL_SET_CLOCKEVENT: |
86 | guest_set_clockevent(cpu, args->arg1); | 96 | guest_set_clockevent(cpu, args->arg1); |
87 | break; | 97 | break; |