Date: Tue, 13 Mar 2018 17:57:53 +0000 (UTC) From: Mark Johnston <markj@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r330869 - user/markj/vm-playground/sys/vm Message-ID: <201803131757.w2DHvrJV051451@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
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>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201803131757.w2DHvrJV051451>