From 43a90f3a1b771ea83db749ac15b85dd7aadd7e93 Mon Sep 17 00:00:00 2001 From: Alan Cox Date: Sat, 22 Jun 2002 01:26:02 +0000 Subject: [PATCH] o Remove GIANT_REQUIRED from vslock(). o Annotate kernacc(), useracc(), and vslock() as MPSAFE. Motivated by: alfred --- sys/vm/vm_glue.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/sys/vm/vm_glue.c b/sys/vm/vm_glue.c index 587695b6d3e..6c48cbcc179 100644 --- a/sys/vm/vm_glue.c +++ b/sys/vm/vm_glue.c @@ -114,6 +114,9 @@ SYSINIT(scheduler, SI_SUB_RUN_SCHEDULER, SI_ORDER_FIRST, scheduler, NULL) static void swapout(struct proc *); #endif +/* + * MPSAFE + */ int kernacc(addr, len, rw) caddr_t addr; @@ -132,6 +135,9 @@ kernacc(addr, len, rw) return (rv == TRUE); } +/* + * MPSAFE + */ int useracc(addr, len, rw) caddr_t addr; @@ -162,12 +168,15 @@ useracc(addr, len, rw) return (rv == TRUE); } +/* + * MPSAFE + */ void vslock(addr, len) caddr_t addr; u_int len; { - GIANT_REQUIRED; + vm_map_wire(&curproc->p_vmspace->vm_map, trunc_page((vm_offset_t)addr), round_page((vm_offset_t)addr + len), FALSE); }