hello hurd,

See if this patch is good!
thanks.
From c13cb7a92c1b6d3be590950b075b5cb7104132b6 Mon Sep 17 00:00:00 2001
From: guy fleury iteriteka <gfle...@disroot.org>
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

Reply via email to