]> git.proxmox.com Git - mirror_ubuntu-disco-kernel.git/commit
x86-32: Rework cache flush denied handler
authorBrian Gerst <brgerst@gmail.com>
Sun, 21 Mar 2010 13:00:43 +0000 (09:00 -0400)
committerH. Peter Anvin <hpa@zytor.com>
Mon, 3 May 2010 20:39:26 +0000 (13:39 -0700)
commit40d2e76315da38993129090dc5d56377e573c312
tree8f585daa23780aa0841ac72b34053f9deb00041c
parentbe1066bbcd443a65df312fdecea7e4959adedb45
x86-32: Rework cache flush denied handler

The cache flush denied error is an erratum on some AMD 486 clones.  If an invd
instruction is executed in userspace, the processor calls exception 19 (13 hex)
instead of #GP (13 decimal).  On cpus where XMM is not supported, redirect
exception 19 to do_general_protection().  Also, remove die_if_kernel(), since
this was the last user.

Signed-off-by: Brian Gerst <brgerst@gmail.com>
LKML-Reference: <1269176446-2489-2-git-send-email-brgerst@gmail.com>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
arch/x86/Kconfig.cpu
arch/x86/kernel/entry_32.S
arch/x86/kernel/traps.c