From 27a84dbf6be9fd0a0b2f3af75e43fd13f1b587a8 Mon Sep 17 00:00:00 2001 From: Keir Fraser Date: Thu, 28 Aug 2008 13:09:02 +0100 Subject: [PATCH] stubdom: fix munmap's update_va_mapping flag passing, thus fixing INVLPG passing Signed-off-by: Samuel Thibault --- lib/sys.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/lib/sys.c b/lib/sys.c index 47bbbda..4285449 100644 --- a/lib/sys.c +++ b/lib/sys.c @@ -1221,11 +1221,14 @@ int munmap(void *start, size_t length) int ret; for (i = 0; i < n; i++) { + int arg = 0; call[i].op = __HYPERVISOR_update_va_mapping; - call[i].args[0] = (unsigned long) &data[i]; - call[i].args[1] = 0; - call[i].args[2] = 0; - call[i].args[3] = UVMF_INVLPG; + call[i].args[arg++] = (unsigned long) &data[i]; + call[i].args[arg++] = 0; +#ifdef __i386__ + call[i].args[arg++] = 0; +#endif + call[i].args[arg++] = UVMF_INVLPG; } ret = HYPERVISOR_multicall(call, n); -- 2.39.5