linux-kernel-test/arch/microblaze/kernel
Michal Simek bf2d809668 microblaze: Lockdep support
Microblaze needs to do lock_init very soon because MMU init calls lock functions.

Here is the explanation from Peter Zijlstra why we have to enable
__ARCH_WANTS_INTERRUPTS_ON_CTSW.

"So we schedule while holding rq->lock (for obvious reasons), but since
lockdep tracks held locks per tasks, we need to transfer the held state
from the prev to the next task. We do this by explicity calling
spin_release(&rq->lock) in context_switch() right before switch_to(),
and calling spin_acquire(&rq->lock) in
finish_task_switch()->finish_lock_switch().

Now, for some reason lockdep thinks that interrupts got enabled over the
context switch (git grep __ARCH_WANTS_INTERRUPTS_ON_CTSW arch/microblaze
doesn't seem to turn up anything).

Clearly trying to acquire the rq->lock with interrupts enabled is a bad
idea and lockdep warns you about this."

Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-12-14 08:40:09 +01:00
..
cpu microblaze: Updated CPU version and FPGA family codes in PVR 2009-09-22 10:00:45 +02:00
asm-offsets.c microblaze_mmu_v2: MMU asm offset update 2009-05-26 16:45:19 +02:00
early_printk.c microblaze_mmu_v2: Alocate TLB for early console 2009-05-26 16:45:14 +02:00
entry-nommu.S microblaze: use generic syscalls.h 2009-07-06 10:26:59 +02:00
entry.S microblaze: Clear sticky FSR register after saving it to func parametr 2009-10-05 11:37:47 +02:00
exceptions.c microblaze: Generate correct signal and siginfo for integer div-by-zero 2009-09-22 10:00:44 +02:00
head.S of: add common header for flattened device tree representation 2009-10-15 10:57:53 -06:00
heartbeat.c microblaze_v8: heartbeat file 2009-03-27 14:25:24 +01:00
hw_exception_handler.S microblaze: Clear sticky FSR register after saving it to func parametr 2009-10-05 11:37:47 +02:00
init_task.c Use new __init_task_data macro in arch init_task.c files. 2009-09-21 06:27:08 +02:00
intc.c microblaze: Sane handling of missing timer/intc in device tree 2009-08-18 10:33:30 +02:00
irq.c microblaze: use the generic ack_bad_irq implementation 2009-08-18 10:33:29 +02:00
Makefile microblaze: Stack trace support 2009-12-14 08:40:09 +01:00
microblaze_ksyms.c microblaze: export some symbols 2009-05-21 15:56:05 +02:00
misc.S microblaze: Fix problem with early_printk in startup 2009-05-30 16:40:58 +02:00
module.c microblaze: Add support for R_MICROBLAZE_64_NONE 2009-07-27 09:03:18 +02:00
of_device.c microblaze: struct device - replace bus_id with dev_name() 2009-04-14 10:37:27 +02:00
of_platform.c microblaze_v8: Open firmware files 2009-03-27 14:25:12 +01:00
process.c microblaze: UMS is used only for MMU kernel 2009-10-05 11:37:47 +02:00
prom_parse.c microblaze_v8: Open firmware files 2009-03-27 14:25:12 +01:00
prom.c of: merge of_find_all_nodes() implementations 2009-10-15 10:58:09 -06:00
ptrace.c microblaze: Support ptrace syscall tracing. 2009-09-22 10:00:45 +02:00
reset.c microblaze: GPIO reset support 2009-12-14 08:40:08 +01:00
selfmod.c microblaze_v8: Selfmodified code 2009-03-27 14:25:15 +01:00
setup.c microblaze: Lockdep support 2009-12-14 08:40:09 +01:00
signal.c headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
stacktrace.c microblaze: Stack trace support 2009-12-14 08:40:09 +01:00
sys_microblaze.c Unify sys_mmap* 2009-12-11 06:44:29 -05:00
syscall_table.S Unify sys_mmap* 2009-12-11 06:44:29 -05:00
timer.c microblaze: Register timecounter/cyclecounter 2009-12-14 08:40:09 +01:00
traps.c microblaze_mmu_v2: Traps MMU update 2009-05-26 16:45:21 +02:00
vmlinux.lds.S microblaze: Add IRQENTRY_TEXT to lds 2009-12-14 08:40:09 +01:00