mirror of https://gitee.com/openkylin/linux.git
tools/kvm_stat: fix crash when filtering out all non-child trace events
When we apply a filter that will only leave child trace events, we receive a ZeroDivisionError when calculating the percentages. In that case, provide percentages based on child events only. To reproduce, run 'kvm_stat -f .*[\(].*'. Signed-off-by: Stefan Raspl <raspl@linux.vnet.ibm.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
369d5a85bb
commit
3df33a0f34
|
@ -1084,9 +1084,15 @@ class Tui(object):
|
|||
self.screen.clrtobot()
|
||||
stats = self.stats.get(self._display_guests)
|
||||
total = 0.
|
||||
ctotal = 0.
|
||||
for key, values in stats.items():
|
||||
if key.find('(') == -1:
|
||||
total += values.value
|
||||
else:
|
||||
ctotal += values.value
|
||||
if total == 0.:
|
||||
# we don't have any fields, or all non-child events are filtered
|
||||
total = ctotal
|
||||
|
||||
if self._sorting == SORT_DEFAULT:
|
||||
def sortkey((_k, v)):
|
||||
|
|
Loading…
Reference in New Issue