All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sudeep Holla <sudeep.holla@arm.com>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: Sudeep Holla <sudeep.holla@arm.com>,
	LKML <linux-kernel@vger.kernel.org>,
	Ingo Molnar <mingo@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Preeti U Murthy <preeti@linux.vnet.ibm.com>,
	Suzuki Poulose <Suzuki.Poulose@arm.com>,
	Lorenzo Pieralisi <Lorenzo.Pieralisi@arm.com>,
	Catalin Marinas <Catalin.Marinas@arm.com>,
	"Rafael J. Wysocki" <rafael.j.wysocki@intel.com>
Subject: Re: [patch 1/2] tick/broadcast: Prevent deep idle states if no broadcast device available
Date: Mon, 06 Jul 2015 18:57:57 +0100	[thread overview]
Message-ID: <559AC1A5.901@arm.com> (raw)
In-Reply-To: <alpine.DEB.2.11.1507061838160.3916@nanos>



On 06/07/15 17:53, Thomas Gleixner wrote:
> On Mon, 6 Jul 2015, Sudeep Holla wrote:
>> On 06/07/15 17:06, Thomas Gleixner wrote:
>> 2. After boot I am seeing the below warning:
>>
>> ------------[ cut here ]------------
>> WARNING: CPU: 1 PID: 0 at kernel/time/hrtimer.c:1247
>> __hrtimer_run_queues+0x148/0x150()
>> Modules linked in:
>> CPU: 1 PID: 0 Comm: swapper/1 Not tainted 4.2.0-rc1 #573
>> Hardware name: ARM Juno development board (r0) (DT)
>> Call trace:
>> [<ffffffc000089954>] dump_backtrace+0x0/0x124
>> [<ffffffc000089a88>] show_stack+0x10/0x1c
>> [<ffffffc0005d100c>] dump_stack+0x84/0xc8
>> [<ffffffc0000b3f34>] warn_slowpath_common+0x98/0xd0
>> [<ffffffc0000b402c>] warn_slowpath_null+0x14/0x20
>> [<ffffffc000101eec>] __hrtimer_run_queues+0x144/0x150
>> [<ffffffc0001028b4>] hrtimer_run_queues+0xb8/0xe8
>> [<ffffffc000101714>] update_process_times+0x28/0x6c
>> [<ffffffc00010d978>] tick_periodic+0x3c/0xb8
>> [<ffffffc00010da1c>] tick_handle_periodic+0x28/0x94
>> [<ffffffc0004d6154>] arch_timer_handler_phys+0x28/0x38
>> [<ffffffc0000f5964>] handle_percpu_devid_irq+0x74/0x9c
>> [<ffffffc0000f1668>] generic_handle_irq+0x30/0x4c
>> [<ffffffc0000f1984>] __handle_domain_irq+0x5c/0xac
>> [<ffffffc0000824a8>] gic_handle_irq+0x30/0x80
>
> Bah. I fear Preeti's hrtimer-broadcast stuff recurses in the hrtimer
> code.
>
> tick_periodic()
>    expire broadcast timer()
>      handle_broadcast() {
>        tick_periodic()
> 	 expire_other_timer()
>      }
>
>    warning triggers	
>
> Crap. Patch below should cure that.
>

This triggered the below crash on boot, looks like it's accessing
hrtimer->function which is null in periodic mode IIUC

Regards,
Sudeep

--->8

Bad mode in Synchronous Abort handler detected, code 0x86000005 -- IABT 
(current EL)
CPU: 1 PID: 0 Comm: swapper/1 Not tainted 4.2.0-rc1 #577
Hardware name: ARM Juno development board (r0) (DT)
task: ffffffc976900000 ti: ffffffc9768fc000 task.ti: ffffffc9768fc000
PC is at 0x0
LR is at bc_handler+0x20/0x58
pc : [<0000000000000000>] lr : [<ffffffc00010f4a4>] pstate: a00001c5
sp : ffffffc9768ffbd0

Call trace:
[<          (null)>]           (null)
[<ffffffc000101e88>] __hrtimer_run_queues+0xe0/0x150
[<ffffffc0001028b4>] hrtimer_run_queues+0xb8/0xe8
[<ffffffc000101714>] update_process_times+0x28/0x6c
[<ffffffc00010d978>] tick_periodic+0x3c/0xb8
[<ffffffc00010da1c>] tick_handle_periodic+0x28/0x94
[<ffffffc0004d61d4>] arch_timer_handler_phys+0x28/0x38
[<ffffffc0000f5964>] handle_percpu_devid_irq+0x74/0x9c
[<ffffffc0000f1668>] generic_handle_irq+0x30/0x4c
[<ffffffc0000f1984>] __handle_domain_irq+0x5c/0xac
[<ffffffc0000824a8>] gic_handle_irq+0x30/0x80

  reply	other threads:[~2015-07-06 17:58 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-05 20:53 [patch 0/2] tic/broadcast: Plug a few corner cases which cause malfunction Thomas Gleixner
2015-07-05 20:53 ` [patch 1/2] tick/broadcast: Prevent deep idle states if no broadcast device available Thomas Gleixner
2015-07-06 15:09   ` Sudeep Holla
2015-07-06 15:35     ` Thomas Gleixner
2015-07-06 15:44       ` Sudeep Holla
2015-07-06 16:06         ` Thomas Gleixner
2015-07-06 16:27           ` Sudeep Holla
2015-07-06 16:53             ` Thomas Gleixner
2015-07-06 17:57               ` Sudeep Holla [this message]
2015-07-06 19:56                 ` Thomas Gleixner
2015-07-07  7:31                   ` Thomas Gleixner
2015-07-07 11:25                     ` Sudeep Holla
2015-07-07 11:55                       ` Thomas Gleixner
2015-07-07 17:12                     ` [tip:timers/urgent] tick/broadcast: Prevent hrtimer recursion tip-bot for Thomas Gleixner
2015-07-07 17:12                     ` [tip:timers/urgent] tick/broadcast: Sanity check the shutdown of the local clock_event tip-bot for Thomas Gleixner
2015-07-07 17:13                     ` [tip:timers/urgent] tick/broadcast: Make idle check independent from mode and config tip-bot for Thomas Gleixner
2015-07-07 17:13                     ` [tip:timers/urgent] tick/broadcast: Prevent deep idle if no broadcast device available tip-bot for Thomas Gleixner
2015-07-07 17:13                     ` [tip:timers/urgent] tick/broadcast: Move the check for periodic mode inside state handling tip-bot for Thomas Gleixner
2015-07-07 17:14                     ` [tip:timers/urgent] tick/broadcast: Return busy if periodic mode and hrtimer broadcast tip-bot for Thomas Gleixner
2015-07-07 17:14                     ` [tip:timers/urgent] tick/broadcast: Return busy when IPI is pending tip-bot for Thomas Gleixner
2015-07-07 17:14                     ` [tip:timers/urgent] tick/broadcast: Check for hrtimer broadcast active early tip-bot for Thomas Gleixner
2015-07-05 20:53 ` [patch 2/2] tick/broadcast: Handle spurious interrupts gracefully Thomas Gleixner
2015-07-06 15:17   ` Sudeep Holla
2015-07-06 15:36     ` Thomas Gleixner
2015-07-07 17:15   ` [tip:timers/urgent] " tip-bot for Thomas Gleixner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=559AC1A5.901@arm.com \
    --to=sudeep.holla@arm.com \
    --cc=Catalin.Marinas@arm.com \
    --cc=Lorenzo.Pieralisi@arm.com \
    --cc=Suzuki.Poulose@arm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.org \
    --cc=preeti@linux.vnet.ibm.com \
    --cc=rafael.j.wysocki@intel.com \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.