Mark Johnston f93f7cf199 Speed up vm_page_array initialization.
We currently initialize the vm_page array in three passes: one to zero
the array, one to initialize the "order" field of each page (necessary
when inserting them into the vm_phys buddy allocator one-by-one), and
one to initialize the remaining non-zero fields and individually insert
each page into the allocator.

Merge the three passes into one following a suggestion from alc:
initialize vm_page fields in a single pass, and use vm_phys_free_contig()
to efficiently insert physical memory segments into the buddy allocator.
This reduces the initialization time to a third or a quarter of what it
was before on most systems that I tested.

Reviewed by:	alc, kib
MFC after:	3 weeks
Differential Revision:	https://reviews.freebsd.org/D12248
2017-09-07 21:43:39 +00:00
..
2017-09-06 16:18:53 +00:00
2017-03-11 16:35:36 +00:00
2017-03-13 18:45:25 +00:00
2017-02-28 23:42:47 +00:00
2017-02-28 23:42:47 +00:00
2017-08-15 16:39:49 +00:00
2017-02-28 23:42:47 +00:00
2017-05-02 18:40:41 +00:00
2017-08-15 16:39:49 +00:00
2017-02-28 23:42:47 +00:00
2017-02-28 23:42:47 +00:00
2017-05-23 09:29:05 +00:00
2017-02-28 23:42:47 +00:00
2017-06-24 17:01:11 +00:00