Skip to content

Commit

Permalink
mm: Fix signal SIGFPE in slabinfo.c.
Browse files Browse the repository at this point in the history
In function slab_stats(), if total_free is equal zero, it will error.
So fix it.

Acked-by: Christoph Lameter <[email protected]>
Signed-off-by: majianpeng <[email protected]>
Signed-off-by: Pekka Enberg <[email protected]>
  • Loading branch information
majianpeng authored and penberg committed Jul 2, 2012
1 parent a164f89 commit 4b57ad9
Showing 1 changed file with 7 additions and 7 deletions.
14 changes: 7 additions & 7 deletions tools/vm/slabinfo.c
Original file line number Diff line number Diff line change
Expand Up @@ -437,34 +437,34 @@ static void slab_stats(struct slabinfo *s)
printf("Fastpath %8lu %8lu %3lu %3lu\n",
s->alloc_fastpath, s->free_fastpath,
s->alloc_fastpath * 100 / total_alloc,
s->free_fastpath * 100 / total_free);
total_free ? s->free_fastpath * 100 / total_free : 0);
printf("Slowpath %8lu %8lu %3lu %3lu\n",
total_alloc - s->alloc_fastpath, s->free_slowpath,
(total_alloc - s->alloc_fastpath) * 100 / total_alloc,
s->free_slowpath * 100 / total_free);
total_free ? s->free_slowpath * 100 / total_free : 0);
printf("Page Alloc %8lu %8lu %3lu %3lu\n",
s->alloc_slab, s->free_slab,
s->alloc_slab * 100 / total_alloc,
s->free_slab * 100 / total_free);
total_free ? s->free_slab * 100 / total_free : 0);
printf("Add partial %8lu %8lu %3lu %3lu\n",
s->deactivate_to_head + s->deactivate_to_tail,
s->free_add_partial,
(s->deactivate_to_head + s->deactivate_to_tail) * 100 / total_alloc,
s->free_add_partial * 100 / total_free);
total_free ? s->free_add_partial * 100 / total_free : 0);
printf("Remove partial %8lu %8lu %3lu %3lu\n",
s->alloc_from_partial, s->free_remove_partial,
s->alloc_from_partial * 100 / total_alloc,
s->free_remove_partial * 100 / total_free);
total_free ? s->free_remove_partial * 100 / total_free : 0);

printf("Cpu partial list %8lu %8lu %3lu %3lu\n",
s->cpu_partial_alloc, s->cpu_partial_free,
s->cpu_partial_alloc * 100 / total_alloc,
s->cpu_partial_free * 100 / total_free);
total_free ? s->cpu_partial_free * 100 / total_free : 0);

printf("RemoteObj/SlabFrozen %8lu %8lu %3lu %3lu\n",
s->deactivate_remote_frees, s->free_frozen,
s->deactivate_remote_frees * 100 / total_alloc,
s->free_frozen * 100 / total_free);
total_free ? s->free_frozen * 100 / total_free : 0);

printf("Total %8lu %8lu\n\n", total_alloc, total_free);

Expand Down

0 comments on commit 4b57ad9

Please sign in to comment.