diff mbox

[v3,02/13] test/mem_region: fix incorrect ibm, os-reserve region length

Message ID 20170824031652.17567-1-stewart@linux.vnet.ibm.com
State Accepted
Headers show

Commit Message

Stewart Smith Aug. 24, 2017, 3:16 a.m. UTC
We were reserving all of memory up to the heap, which is fine
*unless* the system libc chooses to allocate something in that
block of memory that we use, which means we have overlapping
regions and general pain.

This should fix failing unit tests on some systems (e.g. Debian)

Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
---
 core/test/run-mem_region_release_unused.c         | 2 +-
 core/test/run-mem_region_release_unused_noalloc.c | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

---
Changes since v2:
- We don't actually need the heap when allocating nothing, and this
  makes us immune to libc being libc.
diff mbox

Patch

diff --git a/core/test/run-mem_region_release_unused.c b/core/test/run-mem_region_release_unused.c
index 886585b296cc..712f98ab1985 100644
--- a/core/test/run-mem_region_release_unused.c
+++ b/core/test/run-mem_region_release_unused.c
@@ -113,7 +113,7 @@  int main(void)
 	/* Use malloc for the heap, so valgrind can find issues. */
 	skiboot_heap.start = (unsigned long)malloc(TEST_HEAP_SIZE);
 	skiboot_heap.len = TEST_HEAP_SIZE;
-	skiboot_os_reserve.len = skiboot_heap.start;
+	skiboot_os_reserve.len = 0;
 
 	dt_root = dt_new_root("");
 	dt_add_property_cells(dt_root, "#address-cells", 2);
diff --git a/core/test/run-mem_region_release_unused_noalloc.c b/core/test/run-mem_region_release_unused_noalloc.c
index 2a9f641148ff..a79485b176bc 100644
--- a/core/test/run-mem_region_release_unused_noalloc.c
+++ b/core/test/run-mem_region_release_unused_noalloc.c
@@ -110,9 +110,10 @@  int main(void)
 	const char *last;
 
 	/* Use malloc for the heap, so valgrind can find issues. */
-	skiboot_heap.start = (unsigned long)malloc(TEST_HEAP_SIZE);
+	skiboot_heap.start = 0;
 	skiboot_heap.len = TEST_HEAP_SIZE;
-	skiboot_os_reserve.len = skiboot_heap.start;
+	skiboot_os_reserve.start = 0;
+	skiboot_os_reserve.len = 0;
 
 	dt_root = dt_new_root("");
 	dt_add_property_cells(dt_root, "#address-cells", 2);
@@ -163,6 +164,5 @@  int main(void)
 	}
 
 	dt_free(dt_root);
-	free((void *)(long)skiboot_heap.start);
 	return 0;
 }