acrn-kernel/arch/mips/kernel
Alex Smith 57c7ea513f MIPS: ptrace: Avoid smp_processor_id() in preemptible code
ptrace_{get,set}_watch_regs access current_cpu_data to get the watch
register count/masks, which calls smp_processor_id(). However they are
run in preemptible context and therefore trigger warnings like so:

[ 6340.092000] BUG: using smp_processor_id() in preemptible [00000000] code: gdb/367
[ 6340.092000] caller is ptrace_get_watch_regs+0x44/0x220

Since the watch register count/masks should be the same across all
CPUs, use boot_cpu_data instead. Note that this may need to change in
future should a heterogenous system be supported where the count/masks
are not the same across all CPUs (the current code is also incorrect
for this scenario - current_cpu_data here would not necessarily be
correct for the CPU that the target task will execute on).

Signed-off-by: Alex Smith <alex.smith@imgtec.com>
Reviewed-by: Paul Burton <paul.burton@imgtec.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/6879/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2014-05-28 10:54:41 +02:00
..
.gitignore
8250-platform.c
Makefile MIPS: Coherent Processing System SMP implementation 2014-03-26 23:00:12 +01:00
asm-offsets.c MIPS: Save/restore MSA context around signals 2014-03-26 23:09:11 +01:00
binfmt_elfn32.c
binfmt_elfo32.c MIPS: Support for 64-bit FP with O32 binaries 2014-01-13 23:40:56 +01:00
bmips_vec.S MIPS: Fix gigaton of warning building with microMIPS. 2014-03-31 18:17:12 +02:00
branch.c MIPS: Fix branch emulation of branch likely instructions. 2014-05-23 01:00:26 +02:00
cevt-bcm1480.c
cevt-ds1287.c
cevt-gic.c
cevt-gt641xx.c
cevt-r4k.c
cevt-sb1250.c
cevt-smtc.c
cevt-txx9.c
cps-vec.S MIPS: Coherent Processing System SMP implementation 2014-03-26 23:00:12 +01:00
cpu-bugs64.c
cpu-probe.c MIPS: Fix core number detection for MT cores 2014-03-31 18:17:12 +02:00
crash.c mips: delete non-required instances of include <linux/init.h> 2014-01-24 22:39:56 +01:00
crash_dump.c
csrc-bcm1480.c
csrc-gic.c
csrc-ioasic.c
csrc-r4k.c
csrc-sb1250.c
early_printk.c
early_printk_8250.c
entry.S
ftrace.c Most of the changes were largely clean ups, and some documentation. 2014-04-03 10:26:31 -07:00
genex.S MIPS: Fix gigaton of warning building with microMIPS. 2014-03-31 18:17:12 +02:00
gpio_txx9.c
head.S MIPS: malta: Add support for SMP EVA 2014-03-26 23:09:20 +01:00
i8253.c
i8259.c
idle.c MIPS: Fix gigaton of warning building with microMIPS. 2014-03-31 18:17:12 +02:00
irq-gic.c MIPS: Remove gcmpregs.h 2014-03-26 23:09:07 +01:00
irq-gt641xx.c
irq-msc01.c
irq-rm7000.c
irq.c
irq_cpu.c
irq_txx9.c
jump_label.c
kgdb.c MIPS: kernel: {ftrace,kgdb}: Set correct address limit for cache flushes 2014-03-26 23:09:18 +01:00
kprobes.c
linux32.c
machine_kexec.c
mcount.S
mips-cm.c MIPS: Add generic CM probe & access code 2014-03-06 21:25:22 +01:00
mips-cpc.c MIPS: Add CPC probe, access functions 2014-03-06 21:25:23 +01:00
mips-mt-fpaff.c
mips-mt.c
mips_ksyms.c MIPS: checksum: Split the 'copy_user' symbol 2014-03-26 23:09:17 +01:00
mips_machine.c
module-rela.c
module.c
octeon_switch.S
perf_event.c
perf_event_mipsxx.c MIPS: perf: Add interAptiv support 2014-03-31 18:17:12 +02:00
proc.c Revert "MIPS: MT: proc: Add support for printing VPE and TC ids" 2014-05-13 00:29:33 +02:00
process.c MIPS: Basic MSA context switching support 2014-03-26 23:09:10 +01:00
prom.c
ptrace.c MIPS: ptrace: Avoid smp_processor_id() in preemptible code 2014-05-28 10:54:41 +02:00
ptrace32.c MIPS: Simplify PTRACE_PEEKUSR for FPC_EIR 2014-03-31 18:17:12 +02:00
r4k_fpu.S Merge branch '3.14-fixes' into mips-for-linux-next 2014-03-31 18:17:33 +02:00
r4k_switch.S MIPS: Fix gigaton of warning building with microMIPS. 2014-03-31 18:17:12 +02:00
r2300_fpu.S
r2300_switch.S
r6000_fpu.S
relocate_kernel.S
reset.c
rtlx-cmp.c MIPS: APRP: Unregister rtlx interrupt hook at module exit 2014-03-06 20:55:07 +01:00
rtlx-mt.c MIPS: APRP: Unregister rtlx interrupt hook at module exit 2014-03-06 20:55:07 +01:00
rtlx.c MIPS: APRP: Code formatting clean-ups. 2014-01-22 20:19:02 +01:00
scall32-o32.S MIPS: Wire up renameat2 syscall. 2014-05-13 17:57:33 +02:00
scall64-64.S MIPS: Wire up renameat2 syscall. 2014-05-13 17:57:33 +02:00
scall64-n32.S MIPS: Wire up renameat2 syscall. 2014-05-13 17:57:33 +02:00
scall64-o32.S MIPS: Wire up renameat2 syscall. 2014-05-13 17:57:33 +02:00
segment.c MIPS: Add debugfs file to print the segmentation control registers 2014-01-22 20:19:00 +01:00
setup.c
signal-common.h
signal.c MIPS: kernel: signal: Prevent save/restore FPU context in user memory 2014-03-26 23:09:17 +01:00
signal32.c MIPS: Save/restore MSA context around signals 2014-03-26 23:09:11 +01:00
signal_n32.c
smp-bmips.c MIPS: BMIPS: change compile time checks to runtime checks 2014-01-22 20:18:51 +01:00
smp-cmp.c MIPS: smp-cmp: Remove incorrect core number probe 2014-03-31 18:17:12 +02:00
smp-cps.c MIPS: Coherent Processing System SMP implementation 2014-03-26 23:00:12 +01:00
smp-gic.c MIPS: Move GIC IPI functions out of smp-cmp.c 2014-03-06 21:25:22 +01:00
smp-mt.c MIPS: smp-mt: Use common GIC IPI implementation 2014-03-31 18:17:12 +02:00
smp-up.c
smp.c
smtc-asm.S
smtc-proc.c MIPS: MT: proc: Add support for printing VPE and TC ids 2014-03-31 18:17:12 +02:00
smtc.c mips: Use the core irq stats function 2014-03-04 17:37:53 +01:00
spinlock_test.c
spram.c MIPS: Use current_cpu_type() instead of c->cputype 2014-03-31 18:17:12 +02:00
stacktrace.c
sync-r4k.c mips: delete non-required instances of include <linux/init.h> 2014-01-24 22:39:56 +01:00
syscall.c MIPS: Fix gigaton of warning building with microMIPS. 2014-03-31 18:17:12 +02:00
time.c
topology.c
traps.c MIPS: Fix typo when reporting cache and ftlb errors for ImgTec cores 2014-05-25 12:45:06 +02:00
unaligned.c MIPS: kernel: unaligned: Handle unaligned accesses for EVA 2014-03-26 23:09:16 +01:00
vdso.c
vmlinux.lds.S
vpe-cmp.c MIPS: APRP: Add VPE loader support for CMP platforms. 2014-01-22 20:19:02 +01:00
vpe-mt.c MIPS: APRP: Code formatting clean-ups. 2014-01-22 20:19:02 +01:00
vpe.c Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2014-01-30 17:20:32 -08:00
watch.c