svn commit: r330869 - user/markj/vm-playground/sys/vm
Mark Johnston
markj at FreeBSD.org
Tue Mar 13 17:57:54 UTC 2018
Author: markj
Date: Tue Mar 13 17:57:53 2018
New Revision: 330869
URL: https://svnweb.freebsd.org/changeset/base/330869
Log:
Make VM_BATCHQ_FOREACH safe.
Modified:
user/markj/vm-playground/sys/vm/vm_pagequeue.h
Modified: user/markj/vm-playground/sys/vm/vm_pagequeue.h
==============================================================================
--- user/markj/vm-playground/sys/vm/vm_pagequeue.h Tue Mar 13 17:10:52 2018 (r330868)
+++ user/markj/vm-playground/sys/vm/vm_pagequeue.h Tue Mar 13 17:57:53 2018 (r330869)
@@ -82,10 +82,10 @@ struct vm_batchqueue {
int bq_cnt;
} __aligned(CACHE_LINE_SIZE);
-#define VM_BATCHQ_FOREACH(batchqp, page) \
- page = (batchqp)->bq_pa[0]; \
- for (int __index = 0; __index < (batchqp)->bq_cnt; \
- __index++, (page) = (batchqp)->bq_pa[__index])
+#define VM_BATCHQ_FOREACH(batchqp, page) \
+ for (vm_page_t *__mp = &(batchqp)->bq_pa[0]; \
+ (page) = *__mp, __mp != &(batchqp)->bq_pa[(batchqp)->bq_cnt]; \
+ __mp++)
#include <vm/uma.h>
#include <sys/pidctrl.h>
More information about the svn-src-user
mailing list