Author: kib
Date: Tue Dec 19 10:06:55 2017
New Revision: 326974
URL: https://svnweb.freebsd.org/changeset/base/326974

Log:
  Perform all accesses to uma_reclaim_needed using atomic(9) KPI.
  
  Reviewed by:  alc, jhb
  Sponsored by: The FreeBSD Foundation
  MFC after:    1 week
  Differential revision:        https://reviews.freebsd.org/D13534

Modified:
  head/sys/vm/uma_core.c

Modified: head/sys/vm/uma_core.c
==============================================================================
--- head/sys/vm/uma_core.c      Tue Dec 19 10:05:45 2017        (r326973)
+++ head/sys/vm/uma_core.c      Tue Dec 19 10:06:55 2017        (r326974)
@@ -3170,14 +3170,14 @@ uma_reclaim_worker(void *arg __unused)
 
        for (;;) {
                sx_xlock(&uma_drain_lock);
-               while (uma_reclaim_needed == 0)
+               while (atomic_load_int(&uma_reclaim_needed) == 0)
                        sx_sleep(uma_reclaim, &uma_drain_lock, PVM, "umarcl",
                            hz);
                sx_xunlock(&uma_drain_lock);
                EVENTHANDLER_INVOKE(vm_lowmem, VM_LOW_KMEM);
                sx_xlock(&uma_drain_lock);
                uma_reclaim_locked(true);
-               uma_reclaim_needed = 0;
+               atomic_store_int(&uma_reclaim_needed, 0);
                sx_xunlock(&uma_drain_lock);
                /* Don't fire more than once per-second. */
                pause("umarclslp", hz);
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to