linux/arch/i386/kernel
David Howells 283828f3c1 [PATCH] Handle TIF_RESTORE_SIGMASK for i386
Handle TIF_RESTORE_SIGMASK as added by David Woodhouse's patch entitled:

        [PATCH] 2/3 Add TIF_RESTORE_SIGMASK support for arch/powerpc
        [PATCH] 3/3 Generic sys_rt_sigsuspend

It does the following:

 (1) Declares TIF_RESTORE_SIGMASK for i386.

 (2) Invokes it over to do_signal() when TIF_RESTORE_SIGMASK is set.

 (3) Makes do_signal() support TIF_RESTORE_SIGMASK, using the signal mask saved
     in current->saved_sigmask.

 (4) Discards sys_rt_sigsuspend() from the arch, using the generic one instead.

 (5) Makes sys_sigsuspend() save the signal mask and set TIF_RESTORE_SIGMASK
     rather than attempting to fudge the return registers.

 (6) Makes sys_sigsuspend() return -ERESTARTNOHAND rather than looping
     intrinsically.

 (7) Makes setup_frame(), setup_rt_frame() and handle_signal() return 0 or
     -EFAULT rather than true/false to be consistent with the rest of the
     kernel.

Due to the fact do_signal() is then only called from one place:

 (8) Makes do_signal() no longer have a return value is it was just being
     ignored; force_sig() takes care of this.

 (9) Discards the old sigmask argument to do_signal() as it's no longer
     necessary.

(10) Makes do_signal() static.

(11) Marks the second argument to do_notify_resume() as unused. The unused
     argument should remain in the middle as the arguments are passed in as
     registers, and the ordering is specific in entry.S

Given the way do_signal() is now no longer called from sys_{,rt_}sigsuspend(),
they no longer need access to the exception frame, and so can just take
arguments normally.

This patch depends on sys_rt_sigsuspend patch.

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-01-18 19:20:29 -08:00
..
acpi [PATCH] x86_64: Fix off by one in acpi table mapping 2006-01-11 19:04:51 -08:00
cpu [PATCH] x86_64: Mark powernow k8 init functions as __cpuinit 2006-01-16 11:27:58 -08:00
timers
Makefile
apic.c [PATCH] i386: Handle missing local APIC timer interrupts on C3 state 2006-01-11 19:04:54 -08:00
apm.c [PATCH] capable/capability.h (arch/) 2006-01-11 18:42:14 -08:00
asm-offsets.c
bootflag.c
cpuid.c
crash.c
crash_dump.c
dmi_scan.c [PATCH] x86_64: Generalize DMI and enable for x86-64 2006-01-11 19:04:51 -08:00
doublefault.c
early_printk.c
efi.c
efi_stub.S
entry.S
head.S
i386_ksyms.c
i387.c
i8237.c
i8259.c
init_task.c
io_apic.c [PATCH] x86_64: Memorize location of i8259 for reboots. 2006-01-11 19:05:00 -08:00
ioport.c [PATCH] capable/capability.h (arch/) 2006-01-11 18:42:14 -08:00
irq.c
kprobes.c
ldt.c
machine_kexec.c
mca.c
microcode.c [PATCH] i386: Replace broken serialize_cpu in microcode driver with correct sync_core 2006-01-11 19:04:58 -08:00
module.c
mpparse.c
msr.c
nmi.c
numaq.c
pci-dma.c
process.c [PATCH] i386: task_stack_page() 2006-01-12 09:08:52 -08:00
ptrace.c
quirks.c
reboot.c [PATCH] i386/x86-64: Don't IPI to offline cpus on shutdown 2006-01-11 19:04:50 -08:00
reboot_fixups.c
relocate_kernel.S
scx200.c
semaphore.c
setup.c [PATCH] i386/x86-64: make setup_early_printk() usage consistent 2006-01-11 19:05:04 -08:00
sigframe.h
signal.c [PATCH] Handle TIF_RESTORE_SIGMASK for i386 2006-01-18 19:20:29 -08:00
smp.c
smpboot.c [PATCH] i386: fix task_pt_regs() 2006-01-12 09:08:52 -08:00
srat.c
summit.c
sys_i386.c
syscall_table.S [PATCH] vfs: *at functions: i386 2006-01-18 19:20:29 -08:00
sysenter.c
time.c [PATCH] i386: Handle missing local APIC timer interrupts on C3 state 2006-01-11 19:04:54 -08:00
time_hpet.c
trampoline.S
traps.c [PATCH] i386: fix stack dump loglevel 2006-01-14 18:27:07 -08:00
vm86.c correct email address of Manfred Spraul 2006-01-15 02:43:54 +01:00
vmlinux.lds.S
vsyscall-int80.S
vsyscall-note.S
vsyscall-sigreturn.S
vsyscall-sysenter.S
vsyscall.S
vsyscall.lds.S