[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH 03/11] xen/page_alloc: Add static per-node counts of free pages
On Fri, Mar 14, 2025 at 05:24:54PM +0000, Alejandro Vallejo wrote: > These are effectively the sum of free memory in all zones of each node. > It's an optimization to avoid doing that operation frequently in > following patches that introduce exact-node claims. > > Signed-off-by: Alejandro Vallejo <alejandro.vallejo@xxxxxxxxx> > --- > xen/common/page_alloc.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c > index 49c3258169db..733b0300a767 100644 > --- a/xen/common/page_alloc.c > +++ b/xen/common/page_alloc.c > @@ -485,6 +485,9 @@ static unsigned long node_need_scrub[MAX_NUMNODES]; > static unsigned long *avail[MAX_NUMNODES]; > static long total_avail_pages; > > +/* Per-node counts of free pages */ > +static unsigned long pernode_avail_pages[MAX_NUMNODES]; > + > static DEFINE_SPINLOCK(heap_lock); > static long outstanding_claims; /* total outstanding claims by all domains */ > > @@ -1033,6 +1036,7 @@ static struct page_info *alloc_heap_pages( > > ASSERT(avail[node][zone] >= request); > avail[node][zone] -= request; > + pernode_avail_pages[node] -= request; Since it's done for the per-zone tracking, you might as well add: ASSERT(pernode_avail_pages[node] >= request); here? Thanks, Roger.
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |