diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2019-03-17 19:16:22 +0300 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2019-03-17 19:16:22 +0300 |
commit | c5b5138cdb2f833a22cfa36c95d6ee41e98a0a34 (patch) | |
tree | 3b7f3452e20b251ce946704b29609b5a74b29bfd | |
parent | db77bef53ba6ba5205ac1788bb8b66ce141ab020 (diff) | |
parent | 0266def913771e718fd0c998eecb072e0685e2c9 (diff) | |
download | linux-c5b5138cdb2f833a22cfa36c95d6ee41e98a0a34.tar.xz |
Merge tag 'for-linus-5.1b-rc1b-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip
Pull xen fix from Juergen Gross:
"A fix for a Xen bug introduced by David's series for excluding
ballooned pages in vmcores"
* tag 'for-linus-5.1b-rc1b-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
xen/balloon: Fix mapping PG_offline pages to user space
-rw-r--r-- | drivers/xen/balloon.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/xen/balloon.c b/drivers/xen/balloon.c index 39b229f9e256..d37dd5bb7a8f 100644 --- a/drivers/xen/balloon.c +++ b/drivers/xen/balloon.c @@ -604,6 +604,7 @@ int alloc_xenballooned_pages(int nr_pages, struct page **pages) while (pgno < nr_pages) { page = balloon_retrieve(true); if (page) { + __ClearPageOffline(page); pages[pgno++] = page; #ifdef CONFIG_XEN_HAVE_PVMMU /* @@ -645,8 +646,10 @@ void free_xenballooned_pages(int nr_pages, struct page **pages) mutex_lock(&balloon_mutex); for (i = 0; i < nr_pages; i++) { - if (pages[i]) + if (pages[i]) { + __SetPageOffline(pages[i]); balloon_append(pages[i]); + } } balloon_stats.target_unpopulated -= nr_pages; |