xen/balloon: Clear PG_offline in balloon_retrieve()
Let's move the clearing to balloon_retrieve(). In bp_state increase_reservation(), we now clear the flag a little earlier than before, however, this should not matter for XEN. Suggested-by: Boris Ostrovsky <boris.ostrovsky@oracle.com> Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com> Cc: Juergen Gross <jgross@suse.com> Cc: Stefano Stabellini <sstabellini@kernel.org> Signed-off-by: David Hildenbrand <david@redhat.com> Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com> Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
This commit is contained in:
parent
59b52f105f
commit
04ccbdc390
@ -189,6 +189,7 @@ static struct page *balloon_retrieve(bool require_lowmem)
|
|||||||
else
|
else
|
||||||
balloon_stats.balloon_low--;
|
balloon_stats.balloon_low--;
|
||||||
|
|
||||||
|
__ClearPageOffline(page);
|
||||||
return page;
|
return page;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -440,7 +441,6 @@ static enum bp_state increase_reservation(unsigned long nr_pages)
|
|||||||
xenmem_reservation_va_mapping_update(1, &page, &frame_list[i]);
|
xenmem_reservation_va_mapping_update(1, &page, &frame_list[i]);
|
||||||
|
|
||||||
/* Relinquish the page back to the allocator. */
|
/* Relinquish the page back to the allocator. */
|
||||||
__ClearPageOffline(page);
|
|
||||||
free_reserved_page(page);
|
free_reserved_page(page);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -606,7 +606,6 @@ int alloc_xenballooned_pages(int nr_pages, struct page **pages)
|
|||||||
while (pgno < nr_pages) {
|
while (pgno < nr_pages) {
|
||||||
page = balloon_retrieve(true);
|
page = balloon_retrieve(true);
|
||||||
if (page) {
|
if (page) {
|
||||||
__ClearPageOffline(page);
|
|
||||||
pages[pgno++] = page;
|
pages[pgno++] = page;
|
||||||
#ifdef CONFIG_XEN_HAVE_PVMMU
|
#ifdef CONFIG_XEN_HAVE_PVMMU
|
||||||
/*
|
/*
|
||||||
|
Loading…
Reference in New Issue
Block a user