Open paging file only if xenpaging_init() succeeds. It can fail if the host
does not support the required virtualization features such as EPT or if
xenpaging was already started for this domain_id.
Signed-off-by: Olaf Hering <olaf@xxxxxxxxx>
Already-Acked-by: Patrick Colp <pjcolp@xxxxxxxxx>
Already-Acked-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
---
tools/xenpaging/xenpaging.c | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
--- xen-unstable.hg-4.1.22344.orig/tools/xenpaging/xenpaging.c
+++ xen-unstable.hg-4.1.22344/tools/xenpaging/xenpaging.c
@@ -502,15 +502,6 @@ int main(int argc, char *argv[])
victims = calloc(num_pages, sizeof(xenpaging_victim_t));
- /* Open file */
- sprintf(filename, "page_cache_%d", domain_id);
- fd = open(filename, open_flags, open_mode);
- if ( fd < 0 )
- {
- perror("failed to open file");
- return -1;
- }
-
/* Seed random-number generator */
srand(time(NULL));
@@ -522,6 +513,15 @@ int main(int argc, char *argv[])
goto out;
}
+ /* Open file */
+ sprintf(filename, "page_cache_%d", domain_id);
+ fd = open(filename, open_flags, open_mode);
+ if ( fd < 0 )
+ {
+ perror("failed to open file");
+ return -1;
+ }
+
/* Evict pages */
memset(victims, 0, sizeof(xenpaging_victim_t) * num_pages);
for ( i = 0; i < num_pages; i++ )
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|