mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
xen: make avail_domheap_pages() inlined into get_outstanding_claims()
Function avail_domheap_pages() is only invoked by get_outstanding_claims(), so it could be inlined into get_outstanding_claims(). Move up avail_heap_pages() to avoid declaration before get_outstanding_claims(). Signed-off-by: Penny Zheng <Penny.Zheng@amd.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
This commit is contained in:
1 parent
bf0cd071db
commit
b5157dcde4
2 files changed
+22
-30
No files matched your search
+22
-29
@@ -488,6 +488,27 @@ static long total_avail_pages;
|
||||
static DEFINE_SPINLOCK(heap_lock);
|
||||
static long outstanding_claims; /* total outstanding claims by all domains */
|
||||
|
||||
static unsigned long avail_heap_pages(
|
||||
unsigned int zone_lo, unsigned int zone_hi, unsigned int node)
|
||||
{
|
||||
unsigned int i, zone;
|
||||
unsigned long free_pages = 0;
|
||||
|
||||
if ( zone_hi >= NR_ZONES )
|
||||
zone_hi = NR_ZONES - 1;
|
||||
|
||||
for_each_online_node(i)
|
||||
{
|
||||
if ( !avail[i] )
|
||||
continue;
|
||||
for ( zone = zone_lo; zone <= zone_hi; zone++ )
|
||||
if ( (node == -1) || (node == i) )
|
||||
free_pages += avail[i][zone];
|
||||
}
|
||||
|
||||
return free_pages;
|
||||
}
|
||||
|
||||
unsigned long domain_adjust_tot_pages(struct domain *d, long pages)
|
||||
{
|
||||
ASSERT(rspin_is_locked(&d->page_alloc_lock));
|
||||
@@ -584,7 +605,7 @@ void get_outstanding_claims(uint64_t *free_pages, uint64_t *outstanding_pages)
|
||||
{
|
||||
spin_lock(&heap_lock);
|
||||
*outstanding_pages = outstanding_claims;
|
||||
*free_pages = avail_domheap_pages();
|
||||
*free_pages = avail_heap_pages(MEMZONE_XEN + 1, NR_ZONES - 1, -1);
|
||||
spin_unlock(&heap_lock);
|
||||
}
|
||||
|
||||
@@ -1962,27 +1983,6 @@ static void init_heap_pages(
|
||||
}
|
||||
}
|
||||
|
||||
static unsigned long avail_heap_pages(
|
||||
unsigned int zone_lo, unsigned int zone_hi, unsigned int node)
|
||||
{
|
||||
unsigned int i, zone;
|
||||
unsigned long free_pages = 0;
|
||||
|
||||
if ( zone_hi >= NR_ZONES )
|
||||
zone_hi = NR_ZONES - 1;
|
||||
|
||||
for_each_online_node(i)
|
||||
{
|
||||
if ( !avail[i] )
|
||||
continue;
|
||||
for ( zone = zone_lo; zone <= zone_hi; zone++ )
|
||||
if ( (node == -1) || (node == i) )
|
||||
free_pages += avail[i][zone];
|
||||
}
|
||||
|
||||
return free_pages;
|
||||
}
|
||||
|
||||
/*************************
|
||||
* COLORED SIDE-ALLOCATOR
|
||||
*
|
||||
@@ -2796,13 +2796,6 @@ unsigned long avail_domheap_pages_region(
|
||||
return avail_heap_pages(zone_lo, zone_hi, node);
|
||||
}
|
||||
|
||||
unsigned long avail_domheap_pages(void)
|
||||
{
|
||||
return avail_heap_pages(MEMZONE_XEN + 1,
|
||||
NR_ZONES - 1,
|
||||
-1);
|
||||
}
|
||||
|
||||
unsigned long avail_node_heap_pages(unsigned int nodeid)
|
||||
{
|
||||
return avail_heap_pages(MEMZONE_XEN, NR_ZONES -1, nodeid);
|
||||
|
||||
@@ -141,7 +141,6 @@ struct page_info *alloc_domheap_pages(
|
||||
void free_domheap_pages(struct page_info *pg, unsigned int order);
|
||||
unsigned long avail_domheap_pages_region(
|
||||
unsigned int node, unsigned int min_width, unsigned int max_width);
|
||||
unsigned long avail_domheap_pages(void);
|
||||
unsigned long avail_node_heap_pages(unsigned int nodeid);
|
||||
#define alloc_domheap_page(d,f) (alloc_domheap_pages(d,0,f))
|
||||
#define free_domheap_page(p) (free_domheap_pages(p,0))
|
||||
|
||||