diff options
author | Sebastian Andrzej Siewior <bigeasy@linutronix.de> | 2013-09-20 12:31:54 (GMT) |
---|---|---|
committer | Scott Wood <scottwood@freescale.com> | 2014-04-10 00:19:51 (GMT) |
commit | 60a0b05ce59c7459f42f135984808accae045206 (patch) | |
tree | 6fcfaf00aa2392ccf84f3bf84eb38ef97d2b31bc /net | |
parent | 4a2c4b3ebff286dcf5474372b5017224b9407a2d (diff) | |
download | linux-fsl-qoriq-60a0b05ce59c7459f42f135984808accae045206.tar.xz |
arm/unwind: use a raw_spin_lock
Mostly unwind is done with irqs enabled however SLUB may call it with
irqs disabled while creating a new SLUB cache.
I had system freeze while loading a module which called
kmem_cache_create() on init. That means SLUB's __slab_alloc() disabled
interrupts and then
->new_slab_objects()
->new_slab()
->setup_object()
->setup_object_debug()
->init_tracking()
->set_track()
->save_stack_trace()
->save_stack_trace_tsk()
->walk_stackframe()
->unwind_frame()
->unwind_find_idx()
=>spin_lock_irqsave(&unwind_lock);
Cc: stable-rt@vger.kernel.org
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Diffstat (limited to 'net')
0 files changed, 0 insertions, 0 deletions