[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[MINI-OS PATCH] e820: fix e820_get_reserved_pfns() to reserve page aligned area



e820_get_reserved_pfns() needs to make sure to reserve only page
aligned memory areas.

Fixes: a7d27a7332ba ("mini-os: add memory map service functions")
Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
---
 e820.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/e820.c b/e820.c
index d8cfb1f4..1ffeaf00 100644
--- a/e820.c
+++ b/e820.c
@@ -365,7 +365,7 @@ unsigned long e820_get_reserved_pfns(int pages)
     unsigned long last = 0, needed = (long)pages << PAGE_SHIFT;
 
     for ( i = 0; i < e820_entries && e820_map[i].addr < last + needed; i++ )
-        last = e820_map[i].addr + e820_map[i].size;
+        last = round_pgup(e820_map[i].addr + e820_map[i].size);
 
     if ( i == 0 || e820_map[i - 1].type != E820_TYPE_SOFT_RESERVED )
         e820_insert_entry_at(i, last, needed, E820_TYPE_SOFT_RESERVED);
-- 
2.43.0




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.