Improve error message.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2736 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/coregrind/vg_main.c b/coregrind/vg_main.c
index 0bfa60b..5c701e8 100644
--- a/coregrind/vg_main.c
+++ b/coregrind/vg_main.c
@@ -458,9 +458,17 @@
MAP_PRIVATE|MAP_ANON|MAP_FIXED|MAP_NORESERVE, -1, 0);
if ((void*)-1 == vres) {
fprintf(stderr,
- "valgrind: Couldn't allocate address space for shadow memory\n"
- "valgrind: Are you using a kernel with a small user address space,\n"
- "valgrind: or do you have your virtual memory size limited?\n");
+ "valgrind: Could not allocate address space (%p bytes)\n"
+ "valgrind: for shadow memory\n"
+ "valgrind: Possible causes:\n"
+ "valgrind: - For some systems (especially under RedHat 8), Valgrind\n"
+ "valgrind: needs at least 1.5GB swap space.\n"
+ "valgrind: - Or, your virtual memory size may be limited (check\n"
+ "valgrind: with 'ulimit -v').\n"
+ "valgrind: - Or, your system may use a kernel that provides only a\n"
+ "valgrind: too-small (eg. 2GB) user address space.\n"
+ , (void*)shadow_size
+ );
exit(1);
}
}