[PATCH v2 2/2] message printing cleanup for option --mem-usage
Baoquan He
bhe at redhat.com
Mon Sep 8 20:26:24 PDT 2014
Adjust the message printing when specify option --mem-usage. Try to
avoid the unrelated printing.
And add the page size info and the total size of system memory on byte.
Signed-off-by: Baoquan He <bhe at redhat.com>
---
makedumpfile.c | 22 ++++++++++++++--------
1 file changed, 14 insertions(+), 8 deletions(-)
diff --git a/makedumpfile.c b/makedumpfile.c
index c965745..8667791 100644
--- a/makedumpfile.c
+++ b/makedumpfile.c
@@ -4939,7 +4939,8 @@ exclude_unnecessary_pages_cyclic(struct cycle *cycle)
for (mm = 0; mm < info->num_mem_map; mm++) {
- print_progress(PROGRESS_UNN_PAGES, mm, info->num_mem_map);
+ if (!info->flag_mem_usage)
+ print_progress(PROGRESS_UNN_PAGES, mm, info->num_mem_map);
mmd = &info->mem_map_data[mm];
@@ -4957,8 +4958,10 @@ exclude_unnecessary_pages_cyclic(struct cycle *cycle)
/*
* print [100 %]
*/
- print_progress(PROGRESS_UNN_PAGES, info->num_mem_map, info->num_mem_map);
- print_execution_time(PROGRESS_UNN_PAGES, &tv_start);
+ if (!info->flag_mem_usage) {
+ print_progress(PROGRESS_UNN_PAGES, info->num_mem_map, info->num_mem_map);
+ print_execution_time(PROGRESS_UNN_PAGES, &tv_start);
+ }
}
return TRUE;
@@ -7948,6 +7951,7 @@ static void
print_mem_usage(void)
{
mdf_pfn_t pfn_original, pfn_excluded, shrinking;
+ unsigned long long total_size;
/*
* /proc/vmcore doesn't contain the memory hole area.
@@ -7958,11 +7962,11 @@ print_mem_usage(void)
+ pfn_user + pfn_free + pfn_hwpoison;
shrinking = (pfn_original - pfn_excluded) * 100;
shrinking = shrinking / pfn_original;
+ total_size = info->page_size * pfn_original;
MSG("\n");
- MSG("\n");
- MSG("----------------------------------------------------------------------\n");
MSG("TYPE PAGES EXCLUDABLE DESCRIPTION\n");
+ MSG("----------------------------------------------------------------------\n");
MSG("ZERO %-16llu yes Pages filled with zero\n", pfn_zero);
MSG("CACHE %-16llu yes Cache pages\n", pfn_cache);
@@ -7975,7 +7979,9 @@ print_mem_usage(void)
MSG("\n");
+ MSG("page size: %-16ld\n", info->page_size);
MSG("Total pages on system: %-16llu\n", pfn_original);
+ MSG("Total size on system: %-16llu Byte\n", total_size);
}
int
@@ -9614,10 +9620,10 @@ main(int argc, char *argv[])
retcd = COMPLETED;
out:
MSG("\n");
- if (retcd == COMPLETED)
- MSG("makedumpfile Completed.\n");
- else
+ if (retcd != COMPLETED)
MSG("makedumpfile Failed.\n");
+ else if (!info->flag_mem_usage)
+ MSG("makedumpfile Completed.\n");
if (info) {
if (info->dh_memory)
--
1.8.5.3
More information about the kexec
mailing list