hello hurd,
See if this patch is good!
thanks.
From c13cb7a92c1b6d3be590950b075b5cb7104132b6 Mon Sep 17 00:00:00 2001
From: guy fleury iteriteka <[email protected]>
Date: Fri, 30 Aug 2019 18:52:33 +0200
Subject: [PATCH] Fix vm_map_msync:Force return KERN_INVALID_ARGUMENT and fix
sync_flags flags check.
* vm/vm_map.c(vm_map_msync): Force to return when map == VM_MAP_NULL and
sync_flags == VM_SYNC_ASYNCHRONOUS | VM_SYNC_SYNCHRONOUS.
* vm/vm_map.c(vm_map_msync): remove unnecesary check of sync_flags.
---
vm/vm_map.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/vm/vm_map.c b/vm/vm_map.c
index aadaec1..37dd070 100644
--- a/vm/vm_map.c
+++ b/vm/vm_map.c
@@ -4880,12 +4880,11 @@ kern_return_t vm_map_msync(
vm_size_t size,
vm_sync_t sync_flags)
{
- if (map == VM_MAP_NULL)
- KERN_INVALID_ARGUMENT;
-
- if (sync_flags & (VM_SYNC_ASYNCHRONOUS | VM_SYNC_SYNCHRONOUS) ==
- (VM_SYNC_ASYNCHRONOUS | VM_SYNC_SYNCHRONOUS))
- KERN_INVALID_ARGUMENT;
+ if (map == VM_MAP_NULL)
+ return KERN_INVALID_ARGUMENT;
+
+ if (sync_flags & (VM_SYNC_ASYNCHRONOUS | VM_SYNC_SYNCHRONOUS))
+ return KERN_INVALID_ARGUMENT;
size = round_page(address + size) - trunc_page(address);
address = trunc_page(address);
--
2.22.0