From 6c4952c7b4072afb5dfe6511c98d33895ad2b1cd Mon Sep 17 00:00:00 2001 From: Alan Cox Date: Sun, 5 Jan 2003 01:31:45 +0000 Subject: [PATCH] Use atomic add and subtract to update the global wired page count, cnt.v_wire_count. --- sys/vm/vm_page.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index e7ffb47ee6a..bc34dc64281 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -863,7 +863,7 @@ loop: m->flags = PG_BUSY; } if (req & VM_ALLOC_WIRED) { - cnt.v_wire_count++; + atomic_add_int(&cnt.v_wire_count, 1); m->wire_count = 1; } else m->wire_count = 0; @@ -1183,7 +1183,7 @@ vm_page_wire(vm_page_t m) if (m->wire_count == 0) { if ((m->flags & PG_UNMANAGED) == 0) vm_pageq_remove(m); - cnt.v_wire_count++; + atomic_add_int(&cnt.v_wire_count, 1); } m->wire_count++; KASSERT(m->wire_count != 0, ("vm_page_wire: wire_count overflow m=%p", m)); @@ -1228,7 +1228,7 @@ vm_page_unwire(vm_page_t m, int activate) if (m->wire_count > 0) { m->wire_count--; if (m->wire_count == 0) { - cnt.v_wire_count--; + atomic_subtract_int(&cnt.v_wire_count, 1); if (m->flags & PG_UNMANAGED) { ; } else if (activate)