X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=stat.c;h=fc0abe0a82b573742d781fa6cde65fc768f9d105;hp=718a8ab2acc1ee65618f132c3efabb9dc6ce7aef;hb=b4a6a59a939f0e6554632de311e7d1d1b7633ccf;hpb=8c16d840377c1e6fb79f479ee60590a2da5b52ee diff --git a/stat.c b/stat.c index 718a8ab2..fc0abe0a 100644 --- a/stat.c +++ b/stat.c @@ -300,7 +300,7 @@ static void show_group_stats(struct group_run_stats *rs, int id) static void show_disk_util(void) { struct disk_util_stat *dus; - struct list_head *entry; + struct list_head *entry, *next; struct disk_util *du; double util; @@ -316,6 +316,16 @@ static void show_disk_util(void) fprintf(f_out, " %s: ios=%u/%u, merge=%u/%u, ticks=%u/%u, in_queue=%u, util=%3.2f%%\n", du->name, dus->ios[0], dus->ios[1], dus->merges[0], dus->merges[1], dus->ticks[0], dus->ticks[1], dus->time_in_queue, util); } + + /* + * now free the list + */ + list_for_each_safe(entry, next, &disk_list) { + list_del(entry); + du = list_entry(entry, struct disk_util, list); + free(du->name); + free(du); + } } static void show_ddir_status(struct thread_data *td, struct group_run_stats *rs,