freebsd-dev/sys/i386/i386
Konstantin Belousov 6632a4330f Do not call trapsignal() after handling usermode fault or interrupt,
when a signal is not intended to be sent.

The variable holding the signal number to send is left uninitialized,
which sometimes triggers invalid signal checks.

For NMI, a return to usermode without ast processing is done.  On the
other hand, for spurious dtrace probe interrupt it is usermode which
triggered the interrupt, so handle it through userret() as any other
fault.

Reported by:	Nils Beyer <nbe@renzel.net>
PR:	221151
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
2017-08-02 10:12:10 +00:00
..
apic_vector.s revert r315959 because it causes build problems 2017-03-27 12:34:29 +00:00
atomic.c
atpic_vector.s Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
bios.c Add config option PAE_TABLES for the i386 kernel. It switches pmap to 2015-04-13 15:22:45 +00:00
bioscall.s
bpf_jit_machdep.c Use kmem_malloc() instead of malloc(9) for the native amd64 filter. 2017-04-17 22:02:09 +00:00
bpf_jit_machdep.h Implement BPF_MOD and BPF_XOR instructions. 2016-10-21 06:55:07 +00:00
db_disasm.c Minor fixes for 160-bit disassembly: 2016-09-25 18:39:24 +00:00
db_interface.c Remove buggy adjustment of page tables in db_write_bytes(). 2017-03-24 17:34:55 +00:00
db_trace.c Don't access the reserved registers %dr4 and %dr5 on i386. 2017-03-17 13:49:05 +00:00
elan-mmcr.c
elf_machdep.c For i386, remove config options CPU_DISABLE_CMPXCHG, CPU_DISABLE_SSE 2017-02-03 12:51:40 +00:00
exception.s Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
gdb_machdep.c Report the values of x86 segment registers to remote debuggers. 2015-06-12 15:14:08 +00:00
genassym.c Remove unused symbols. 2017-07-30 21:52:22 +00:00
geode.c
in_cksum.c Remove register keyword from sys/ and ANSIfy prototypes 2017-05-17 00:34:34 +00:00
initcpu.c For i386, remove config options CPU_DISABLE_CMPXCHG, CPU_DISABLE_SSE 2017-02-03 12:51:40 +00:00
io.c
k6_mem.c Remove register keyword from sys/ and ANSIfy prototypes 2017-05-17 00:34:34 +00:00
locore.s Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
longrun.c
machdep.c Remove the BSD/OS 2.1 system call gate LDT entry. 2017-05-23 22:34:18 +00:00
mem.c Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
minidump_machdep.c Add support for encrypted kernel crash dumps. 2016-12-10 16:20:39 +00:00
mp_clock.c
mp_machdep.c For i386, remove config options CPU_DISABLE_CMPXCHG, CPU_DISABLE_SSE 2017-02-03 12:51:40 +00:00
mpboot.s Remove pc98 support completely. 2017-01-28 02:22:15 +00:00
perfmon.c
pmap.c Batch updates to v_wire_count when freeing page table pages on x86. 2017-08-01 05:26:30 +00:00
ptrace_machdep.c For i386, remove config options CPU_DISABLE_CMPXCHG, CPU_DISABLE_SSE 2017-02-03 12:51:40 +00:00
support.s Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
swtch.s Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
sys_machdep.c Remove register keyword from sys/ and ANSIfy prototypes 2017-05-17 00:34:34 +00:00
trap.c Do not call trapsignal() after handling usermode fault or interrupt, 2017-08-02 10:12:10 +00:00
uio_machdep.c
vm86.c Fix single-stepping of instructions emulated by vm86. 2016-09-08 14:43:39 +00:00
vm86bios.s For i386, remove config options CPU_DISABLE_CMPXCHG, CPU_DISABLE_SSE 2017-02-03 12:51:40 +00:00
vm_machdep.c Remove register keyword from sys/ and ANSIfy prototypes 2017-05-17 00:34:34 +00:00