diff --git a/sys/vm/vm_domainset.c b/sys/vm/vm_domainset.c --- a/sys/vm/vm_domainset.c +++ b/sys/vm/vm_domainset.c @@ -104,7 +104,7 @@ /* Grab the next domain in 'ds_order'. */ *domain = di->di_domain->ds_order[ - (*di->di_iter)++ % di->di_domain->ds_cnt]; + atomic_fetchadd_int(di->di_iter, 1) % di->di_domain->ds_cnt]; } static void @@ -113,7 +113,6 @@ int d; d = di->di_offset % di->di_domain->ds_cnt; - *di->di_iter = d; *domain = di->di_domain->ds_order[d]; }