diff options
author | Arun KS <arunks@codeaurora.org> | 2019-02-05 13:04:17 +1100 |
---|---|---|
committer | Stephen Rothwell <sfr@canb.auug.org.au> | 2019-02-05 13:04:17 +1100 |
commit | 776ec6a2dd632d875b372ff3f5487d22e7e32544 (patch) | |
tree | 6fc4017af99767f32c7d53b6d7db0c298620c918 /drivers/hv/hv_balloon.c | |
parent | bef2897ac50392bccc4d3060607db7a70f7ff782 (diff) | |
download | linux-next-776ec6a2dd632d875b372ff3f5487d22e7e32544.tar.gz |
mm-page_allocc-memory_hotplug-free-pages-as-higher-order-v11
fix condition check in hv_ballon driver, fix check page belong to HAS in hv_ballon.c
Link: http://lkml.kernel.org/r/1547792588-18032-1-git-send-email-arunks@codeaurora.org
Signed-off-by: Arun KS <arunks@codeaurora.org>
Acked-by: Michal Hocko <mhocko@suse.com>
Reviewed-by: Oscar Salvador <osalvador@suse.de>
Reviewed-by: Alexander Duyck <alexander.h.duyck@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Diffstat (limited to 'drivers/hv/hv_balloon.c')
-rw-r--r-- | drivers/hv/hv_balloon.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/hv/hv_balloon.c b/drivers/hv/hv_balloon.c index 31e9cfcf07d2..a50b7624b2a3 100644 --- a/drivers/hv/hv_balloon.c +++ b/drivers/hv/hv_balloon.c @@ -780,10 +780,11 @@ static void hv_online_page(struct page *pg, unsigned int order) spin_lock_irqsave(&dm_device.ha_lock, flags); list_for_each_entry(has, &dm_device.ha_region_list, list) { /* The page belongs to a different HAS. */ - if ((pfn < has->start_pfn) || (pfn >= has->end_pfn)) + if ((pfn < has->start_pfn) || + (pfn + (1UL << order) > has->end_pfn)) continue; - hv_bring_pgs_online(has, pfn, (1UL << order)); + hv_bring_pgs_online(has, pfn, 1UL << order); break; } spin_unlock_irqrestore(&dm_device.ha_lock, flags); |