From patchwork Wed Oct 15 04:25:28 2008 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Benjamin Herrenschmidt X-Patchwork-Id: 4563 X-Patchwork-Delegate: paulus@samba.org Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from ozlabs.org (localhost [127.0.0.1]) by ozlabs.org (Postfix) with ESMTP id 7CB72DDE41 for ; Wed, 15 Oct 2008 15:26:33 +1100 (EST) X-Original-To: linuxppc-dev@ozlabs.org Delivered-To: linuxppc-dev@ozlabs.org Received: by ozlabs.org (Postfix, from userid 1030) id 7ABA0DDDEE; Wed, 15 Oct 2008 15:26:08 +1100 (EST) To: From: Benjamin Herrenschmidt Date: Wed, 15 Oct 2008 15:25:28 +1100 Subject: [PATCH] powerpc: Silent SW timebase sync Message-Id: <20081015042610.7ABA0DDDEE@ozlabs.org> X-BeenThere: linuxppc-dev@ozlabs.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org Errors-To: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org When no HW method is provided to sync the timebase, linux uses a software algorithm. The code for that is very verbose using straight printk's without log level. A lot of this is mostly useless unless you want to debug the process, and we didn't have any problem with it for years anyway so this turns the bunch of them into pr_debug. Signed-off-by: Benjamin Herrenschmidt Acked-by: Grant Likely --- arch/powerpc/kernel/smp-tbsync.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) --- linux-work.orig/arch/powerpc/kernel/smp-tbsync.c 2008-10-15 14:42:24.000000000 +1100 +++ linux-work/arch/powerpc/kernel/smp-tbsync.c 2008-10-15 15:23:03.000000000 +1100 @@ -113,7 +113,7 @@ void __devinit smp_generic_give_timebase { int i, score, score2, old, min=0, max=5000, offset=1000; - printk("Synchronizing timebase\n"); + pr_debug("Software timebase sync\n"); /* if this fails then this kernel won't work anyway... */ tbsync = kzalloc( sizeof(*tbsync), GFP_KERNEL ); @@ -123,13 +123,13 @@ void __devinit smp_generic_give_timebase while (!tbsync->ack) barrier(); - printk("Got ack\n"); + pr_debug("Got ack\n"); /* binary search */ for (old = -1; old != offset ; offset = (min+max) / 2) { score = start_contest(kSetAndTest, offset, NUM_ITER); - printk("score %d, offset %d\n", score, offset ); + pr_debug("score %d, offset %d\n", score, offset ); if( score > 0 ) max = offset; @@ -140,8 +140,8 @@ void __devinit smp_generic_give_timebase score = start_contest(kSetAndTest, min, NUM_ITER); score2 = start_contest(kSetAndTest, max, NUM_ITER); - printk("Min %d (score %d), Max %d (score %d)\n", - min, score, max, score2); + pr_debug("Min %d (score %d), Max %d (score %d)\n", + min, score, max, score2); score = abs(score); score2 = abs(score2); offset = (score < score2) ? min : max; @@ -155,7 +155,7 @@ void __devinit smp_generic_give_timebase if (score2 <= score || score2 < 20) break; } - printk("Final offset: %d (%d/%d)\n", offset, score2, NUM_ITER ); + pr_debug("Final offset: %d (%d/%d)\n", offset, score2, NUM_ITER ); /* exiting */ tbsync->cmd = kExit;