FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Ubuntu > Ubuntu Kernel Team

 
 
LinkBack Thread Tools
 
Old 10-12-2012, 06:54 PM
Brad Figg
 
Default Ack: tick: Fix the spurious broadcast timer ticks after resume

On 10/12/2012 11:32 AM, Tim Gardner wrote:
> From: Suresh Siddha <suresh.b.siddha@intel.com>
>
> BugLink: http://bugs.launchpad.net/bugs/1065076
>
> During resume, tick_resume_broadcast() programs the broadcast timer in
> oneshot mode unconditionally. On the platforms where broadcast timer
> is not really required, this will generate spurious broadcast timer
> ticks upon resume. For example, on the always running apic timer
> platforms with HPET, I see spurious hpet tick once every ~5minutes
> (which is the 32-bit hpet counter wraparound time).
>
> Similar to boot time, during resume make the oneshot mode setting of
> the broadcast clock event device conditional on the state of active
> broadcast users.
>
> Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
> Tested-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
> Tested-by: svenjoac@gmx.de
> Cc: torvalds@linux-foundation.org
> Cc: rjw@sisk.pl
> Link: http://lkml.kernel.org/r/1334802459.28674.209.camel@sbsiddha-desk.sc.intel.com
> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
> (cherry picked from commit a6371f80230eaaafd7eef7efeedaa9509bdc982d)
>
> Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
> ---
> kernel/time/tick-broadcast.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/kernel/time/tick-broadcast.c b/kernel/time/tick-broadcast.c
> index fd4a7b1..f61d678 100644
> --- a/kernel/time/tick-broadcast.c
> +++ b/kernel/time/tick-broadcast.c
> @@ -346,7 +346,8 @@ int tick_resume_broadcast(void)
> tick_get_broadcast_mask());
> break;
> case TICKDEV_MODE_ONESHOT:
> - broadcast = tick_resume_broadcast_oneshot(bc);
> + if (!cpumask_empty(tick_get_broadcast_mask()))
> + broadcast = tick_resume_broadcast_oneshot(bc);
> break;
> }
> }
>


--
Brad Figg brad.figg@canonical.com http://www.canonical.com

--
kernel-team mailing list
kernel-team@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/kernel-team
 

Thread Tools




All times are GMT. The time now is 01:38 PM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org