lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 25 Nov 2014 18:49:16 +0100
From:	Geert Uytterhoeven <geert@...ux-m68k.org>
To:	Daniel Lezcano <daniel.lezcano@...aro.org>
Cc:	Ingo Molnar <mingo@...nel.org>,
	Nicolas Pitre <nicolas.pitre@...aro.org>,
	Paul McKenney <paulmck@...ux.vnet.ibm.com>,
	Jiri Kosina <jkosina@...e.cz>,
	"Rafael J. Wysocki" <rjw@...ysocki.net>,
	Linux PM list <linux-pm@...r.kernel.org>,
	Linux-sh list <linux-sh@...r.kernel.org>,
	"linux-arm-kernel@...ts.infradead.org" 
	<linux-arm-kernel@...ts.infradead.org>,
	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: (bisected) Lock up on sh73a0/kzm9g on cpuidle initialization

On Fri, Nov 7, 2014 at 8:59 AM, Geert Uytterhoeven <geert@...ux-m68k.org> wrote:
> On Thu, Nov 6, 2014 at 10:02 PM, Daniel Lezcano
> <daniel.lezcano@...aro.org> wrote:
>> On 11/06/2014 09:38 PM, Geert Uytterhoeven wrote:
>>> When CONFIG_CPU_IDLE=y, the kernel locks up during cpuidle initialization
>>> on Renesas sh73a0/kzm9g-reference, which has a dual-core Cortex-A9.
>>>
>>> Last message is:
>>>
>>>      DMA: preallocated 256 KiB pool for atomic coherent allocations
>>>
>>> After this it's supposed to print:
>>>
>>>      cpuidle: using governor ladder
>>>      cpuidle: using governor menu
>>>
>>> I've bisected this to commit 442bf3aaf55a91ebfec71da46a4ee10a3c905bcc
>>> ("sched: Let the scheduler see CPU idle states").
>>>
>>> Reverting that commit, and commit 83a0a96a5f26d974580fd7251043ff70c8f1823d
>>> ("sched/fair: Leverage the idle state info when choosing the "idlest"
>>> cpu") which
>>> depends on it, fixes the problem.
>>>
>>> I saw the discussion "lockdep splat in CPU hotplug", so I enabled lockdep
>>> debugging, but didn't see a lockdep splat.
>>
>> Did you try the fix attached ?
>>
>> https://lkml.org/lkml/2014/10/22/722
>
> Thanks, I didn't try that.
>
> However, this patch seems to be in v3.18-rc3, so I'm already using it.
> Hence it doesn't fix the problem for me.
>
> On another board, with a dual Cortex-A15, the problem doesn't show up.

This problem (regression introduced in v3.18-rc1) is still present in v3.18-rc6.

I did some more investigations, and it's hanging in the call to
synchronize_rcu() in cpuidle_uninstall_idle_handler(), which was added in
commit 442bf3aaf55a91ebfec71da46a4ee10a3c905bcc.
More specificailly, it's blocked on the wait_for_completion(&rcu.completion)
in kernel/rcu/update.c:void wait_rcu_gp(call_rcu_func_t crf).

Anyone with a clue?

Thanks again!

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@...ux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ