Hello. I'm running a series of machines, both Xen VM machines and machines running on bare metal, and I notice that on my systems running NetBSD-9.99.77, vmstat -s shows that local-cpu page allocations are never available on the xen VM's, see below. Yet, on machines running on bare metal, local-cpu page allocations are often available, which is what I would expect. A hand inspection of the sys/uvm kernel sources leads me to suspect this condition still exists under today's -current and the -10 branch of the source tree. The Xen VM I'm showing is configured with 2 VCPU's and the bare metal example I'm showing has 4 CPUs. My questions are as follows:
1. What does the local-cpu stat actually reference? Is it counting the number of times a CPU requested a page of memory and a page was available from the local per-cpu free list? 2. What's special about Xen that makes no local-cpu allocations available? (For the record, I see this behavior on all the 9.99.77 Xen machines I have running.) As a point of reference, under NetBSD-9.2, local-cpu allocations are available much of the time under Xen. 3. Is this a design decision or is it an actual bug? -thanks -Brian <vmstat-s output from a Xen VM machine> 2908605631 pagealloc desired color avail 242456994 pagealloc desired color not avail 0 pagealloc local cpu avail 3151062625 pagealloc local cpu not avail 18763 faults with no memory <vmstat -s output on actual bare metal hardware> 355234902 pagealloc desired color avail 250631 pagealloc desired color not avail 310440195 pagealloc local cpu avail 45045338 pagealloc local cpu not avail 0 faults with no memory