[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[xen stable-4.13] x86/hypercall: fix gnttab hypercall args conditional build on pvshim



commit 95b5283e83533f1f19f299742a2b54f715471d7c
Author:     Roger Pau Monné <roger.pau@xxxxxxxxxx>
AuthorDate: Thu Jan 21 16:24:37 2021 +0100
Commit:     Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Thu Jan 21 16:24:37 2021 +0100

    x86/hypercall: fix gnttab hypercall args conditional build on pvshim
    
    A pvshim build doesn't require the grant table functionality built in,
    but it does require knowing the number of arguments the hypercall has
    so the hypercall parameter clobbering works properly.
    
    Instead of also setting the argument count for the gnttab case if PV
    shim functionality is enabled, just drop all of the conditionals from
    hypercall_args_table, as a hypercall having a NULL handler won't get
    to use that information anyway.
    
    Note this hasn't been detected by osstest because the tools pvshim
    build is done without debug enabled, so the hypercall parameter
    clobbering doesn't happen.
    
    Fixes: d2151152dd2 ('xen: make grant table support configurable')
    Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
    Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>
    master commit: b468b464c89e92629bd52cec58e9f51eee2e950a
    master date: 2021-01-08 16:51:52 +0100
---
 xen/arch/x86/hypercall.c | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/xen/arch/x86/hypercall.c b/xen/arch/x86/hypercall.c
index 1d42702c6a..3b749c61f9 100644
--- a/xen/arch/x86/hypercall.c
+++ b/xen/arch/x86/hypercall.c
@@ -47,9 +47,7 @@ const hypercall_args_t hypercall_args_table[NR_hypercalls] =
     ARGS(xen_version, 2),
     ARGS(console_io, 3),
     ARGS(physdev_op_compat, 1),
-#ifdef CONFIG_GRANT_TABLE
     ARGS(grant_table_op, 3),
-#endif
     ARGS(vm_assist, 2),
     COMP(update_va_mapping_otherdomain, 4, 5),
     ARGS(vcpu_op, 3),
@@ -65,14 +63,10 @@ const hypercall_args_t hypercall_args_table[NR_hypercalls] =
     ARGS(sysctl, 1),
     ARGS(domctl, 1),
     ARGS(kexec_op, 2),
-#ifdef CONFIG_ARGO
     ARGS(argo_op, 5),
-#endif
     ARGS(xenpmu_op, 2),
-#ifdef CONFIG_HVM
     ARGS(hvm_op, 2),
     ARGS(dm_op, 3),
-#endif
     ARGS(mca, 1),
     ARGS(arch_1, 1),
 };
--
generated by git-patchbot for /home/xen/git/xen.git#stable-4.13



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.