From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755725AbZFERbS (ORCPT ); Fri, 5 Jun 2009 13:31:18 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751379AbZFERbE (ORCPT ); Fri, 5 Jun 2009 13:31:04 -0400 Received: from mail-bw0-f213.google.com ([209.85.218.213]:53363 "EHLO mail-bw0-f213.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751079AbZFERbD (ORCPT ); Fri, 5 Jun 2009 13:31:03 -0400 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:to:cc:subject:date:message-id:x-mailer; b=ZUfJk0RPyxRGncMVOWd161YEZ9u+pgA/Wz998eaWnQjjyIS1uhzebOkEIyAbeegVJ/ jKpaOjYTjtjVaVHT0okm+AHBG29PzKj9aMM4voRgDwCFLNFQGh3UtC3edCYJ7Kv9H0zi O+SgFsWnEXp4oYu1A9HbEkH7qrDhTx4pYlfdc= From: Frederic Weisbecker To: Ingo Molnar Cc: LKML , Peter Zijlstra , Mike Galbraith , Paul Mackerras , Corey Ashford , Marcelo Tosatti , Arnaldo Carvalho de Melo , Frederic Weisbecker Subject: [PATCH] perfcounter: fix zero or negative refresh delay Date: Fri, 5 Jun 2009 19:31:01 +0200 Message-Id: <1244223061-5399-1-git-send-email-fweisbec@gmail.com> X-Mailer: git-send-email 1.6.2.3 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org If perf top is executed with a zero value for the refresh rate, we get a division by zero exception while computing samples_per_sec. Also a zero refresh rate is not possible, neither do we want to accept negative values. [ Impact: fix division by zero in perf top ] Cc: Peter Zijlstra Cc: Mike Galbraith Cc: Paul Mackerras Cc: Corey Ashford Cc: Marcelo Tosatti Cc: Arnaldo Carvalho de Melo Signed-off-by: Frederic Weisbecker --- Documentation/perf_counter/builtin-top.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/Documentation/perf_counter/builtin-top.c b/Documentation/perf_counter/builtin-top.c index ff7e13c..b2f480b 100644 --- a/Documentation/perf_counter/builtin-top.c +++ b/Documentation/perf_counter/builtin-top.c @@ -693,6 +693,9 @@ int cmd_top(int argc, const char **argv, const char *prefix) event_id[0] = 0; } + if (delay_secs < 1) + delay_secs = 1; + for (counter = 0; counter < nr_counters; counter++) { if (event_count[counter]) continue; -- 1.6.2.3