Fix the UMA reclaim worker after r326347.

atomic_set_*() sets a bit in the target memory location, so
atomic_set_int(&uma_reclaim_needed, 0) does not do what it looks like
it does.

PR:		224080
Reviewed by:	jeff, kib
Differential Revision:	https://reviews.freebsd.org/D13412
This commit is contained in:
Mark Johnston 2017-12-07 19:38:09 +00:00
parent c4ad4dffb3
commit 952a29c04b
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=326664

View File

@ -3177,7 +3177,7 @@ uma_reclaim_worker(void *arg __unused)
EVENTHANDLER_INVOKE(vm_lowmem, VM_LOW_KMEM);
sx_xlock(&uma_drain_lock);
uma_reclaim_locked(true);
atomic_set_int(&uma_reclaim_needed, 0);
uma_reclaim_needed = 0;
sx_xunlock(&uma_drain_lock);
/* Don't fire more than once per-second. */
pause("umarclslp", hz);