diff options
-rw-r--r-- | makedumpfile.c | 8 | ||||
-rw-r--r-- | print_info.c | 15 |
2 files changed, 13 insertions, 10 deletions
diff --git a/makedumpfile.c b/makedumpfile.c index dafe83b..3746cf6 100644 --- a/makedumpfile.c +++ b/makedumpfile.c @@ -5573,7 +5573,7 @@ write_elf_pages(struct cache_data *cd_header, struct cache_data *cd_page) initialize_2nd_bitmap(&bitmap2); num_dumpable = get_num_dumpable(); - per = num_dumpable / 100; + per = num_dumpable / 10000; off_seg_load = info->offset_load_dumpfile; cd_page->offset = info->offset_load_dumpfile; @@ -5858,7 +5858,7 @@ write_elf_pages_cyclic(struct cache_data *cd_header, struct cache_data *cd_page) return FALSE; num_dumpable = info->num_dumpable; - per = num_dumpable / 100; + per = num_dumpable / 10000; off_seg_load = info->offset_load_dumpfile; cd_page->offset = info->offset_load_dumpfile; @@ -6116,7 +6116,7 @@ write_kdump_pages(struct cache_data *cd_header, struct cache_data *cd_page) } num_dumpable = get_num_dumpable(); - per = num_dumpable / 100; + per = num_dumpable / 10000; /* * Calculate the offset of the page data. @@ -6317,7 +6317,7 @@ write_kdump_pages_cyclic(struct cache_data *cd_header, struct cache_data *cd_pag goto out; } - per = info->num_dumpable / 100; + per = info->num_dumpable / 10000; /* * Set a fileoffset of Physical Address 0x0. diff --git a/print_info.c b/print_info.c index 3527970..d7a8600 100644 --- a/print_info.c +++ b/print_info.c @@ -283,27 +283,30 @@ print_usage(void) void print_progress(const char *msg, unsigned long current, unsigned long end) { - int progress; + float progress; time_t tm; static time_t last_time = 0; + static unsigned int lapse = 0; + static const char *spinner = "/|\\-"; if (current < end) { tm = time(NULL); if (tm - last_time < 1) return; last_time = tm; - progress = current * 100 / end; + progress = (float)current * 100 / end; } else progress = 100; if (flag_ignore_r_char) { - PROGRESS_MSG("%-" PROGRESS_MAXLEN "s: [%3d %%]\n", - msg, progress); + PROGRESS_MSG("%-" PROGRESS_MAXLEN "s: [%5.1f %%] %c\n", + msg, progress, spinner[lapse % 4]); } else { PROGRESS_MSG("\r"); - PROGRESS_MSG("%-" PROGRESS_MAXLEN "s: [%3d %%] ", - msg, progress); + PROGRESS_MSG("%-" PROGRESS_MAXLEN "s: [%5.1f %%] %c", + msg, progress, spinner[lapse % 4]); } + lapse++; } void |