38 lines
1.2 KiB
Diff
38 lines
1.2 KiB
Diff
|
Subject: xenpaging: allow negative num_pages and limit num_pages
|
||
|
|
||
|
Simplify paging size argument. If a negative number is specified, it
|
||
|
means the entire guest memory should be paged out. This is useful for
|
||
|
debugging. Also limit num_pages to the guests max_pages.
|
||
|
|
||
|
Signed-off-by: Olaf Hering <olaf@aepfle.de>
|
||
|
|
||
|
---
|
||
|
tools/xenpaging/xenpaging.c | 9 +++++++--
|
||
|
1 file changed, 7 insertions(+), 2 deletions(-)
|
||
|
|
||
|
--- xen-4.0.1-testing.orig/tools/xenpaging/xenpaging.c
|
||
|
+++ xen-4.0.1-testing/tools/xenpaging/xenpaging.c
|
||
|
@@ -512,8 +512,6 @@ int main(int argc, char *argv[])
|
||
|
domain_id = atoi(argv[1]);
|
||
|
num_pages = atoi(argv[2]);
|
||
|
|
||
|
- victims = calloc(num_pages, sizeof(xenpaging_victim_t));
|
||
|
-
|
||
|
/* Seed random-number generator */
|
||
|
srand(time(NULL));
|
||
|
|
||
|
@@ -534,6 +532,13 @@ int main(int argc, char *argv[])
|
||
|
return 2;
|
||
|
}
|
||
|
|
||
|
+ if ( num_pages < 0 || num_pages > paging->domain_info->max_pages )
|
||
|
+ {
|
||
|
+ num_pages = paging->domain_info->max_pages;
|
||
|
+ DPRINTF("setting num_pages to %d\n", num_pages);
|
||
|
+ }
|
||
|
+ victims = calloc(num_pages, sizeof(xenpaging_victim_t));
|
||
|
+
|
||
|
/* ensure that if we get a signal, we'll do cleanup, then exit */
|
||
|
act.sa_handler = close_handler;
|
||
|
act.sa_flags = 0;
|