Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[PARISC] fix signal trampoline cache flushing

The signal trampolines were accidently flushing the kernel I$ instead of
the users. Fix that up, and also add a missing user D$ flush while
we're at it.

Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by

Kyle McMartin and committed by
Linus Torvalds
cf39cc3b 093a07e2

+2 -1
+2 -1
arch/parisc/kernel/signal.c
··· 534 534 * Flushing one cacheline is cheap. 535 535 * "sync" on bigger (> 4 way) boxes is not. 536 536 */ 537 - flush_icache_range(regs->gr[30], regs->gr[30] + 4); 537 + flush_user_dcache_range(regs->gr[30], regs->gr[30] + 4); 538 + flush_user_icache_range(regs->gr[30], regs->gr[30] + 4); 538 539 539 540 regs->gr[31] = regs->gr[30] + 8; 540 541 /* Preserve original r28. */