]> git.baikalelectronics.ru Git - kernel.git/commit
m68knommu: fix signal handling return path
authorWilson Callan <wcallan@savantav.com>
Thu, 1 May 2008 02:16:28 +0000 (12:16 +1000)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 1 May 2008 15:08:35 +0000 (08:08 -0700)
commita8ece2791a1abb718bce2a39d7152a0c9bc8eb0e
treec9e8bce26b85ec9f4790e0f18baaa24c8f6d8f38
parent3f8d36002235209619eb73cdb89a5a51b5b2a8d5
m68knommu: fix signal handling return path

The return from software signal handling pushes code on the stack
that system calls to the kernels cleanup code. This is borrowed
directly from the m68k linux signal handler.

The rt signal case is not quite right for the restricted instruction
set of the ColdFire parts. And neither the normal signal case or rt
signal case properly flushes/pushes the appropriate cache lines.

Rework the return path to just call back through some code fragments
in the kernel proper (with no MMU in the way we can do this). No
cache problems, and less code overall.

Original patch submitted by Wilson Callan <wcallan@savantav.com>

Greg fixed the rt signal return path to use the proper system call

Signed-off-by: Greg Ungerer <gerg@uclinux.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/m68knommu/kernel/entry.S
arch/m68knommu/kernel/signal.c