mirror of https://gitee.com/openkylin/linux.git
ab851d49f6
Pull x86 iopl updates from Ingo Molnar: "This implements a nice simplification of the iopl and ioperm code that Thomas Gleixner discovered: we can implement the IO privilege features of the iopl system call by using the IO permission bitmap in permissive mode, while trapping CLI/STI/POPF/PUSHF uses in user-space if they change the interrupt flag. This implements that feature, with testing facilities and related cleanups" [ "Simplification" may be an over-statement. The main goal is to avoid the cli/sti of iopl by effectively implementing the IO port access parts of iopl in terms of ioperm. This may end up not workign well in case people actually depend on cli/sti being available, or if there are mixed uses of iopl and ioperm. We will see.. - Linus ] * 'x86-iopl-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (22 commits) x86/ioperm: Fix use of deprecated config option x86/entry/32: Clarify register saving in __switch_to_asm() selftests/x86/iopl: Extend test to cover IOPL emulation x86/ioperm: Extend IOPL config to control ioperm() as well x86/iopl: Remove legacy IOPL option x86/iopl: Restrict iopl() permission scope x86/iopl: Fixup misleading comment selftests/x86/ioperm: Extend testing so the shared bitmap is exercised x86/ioperm: Share I/O bitmap if identical x86/ioperm: Remove bitmap if all permissions dropped x86/ioperm: Move TSS bitmap update to exit to user work x86/ioperm: Add bitmap sequence number x86/ioperm: Move iobitmap data into a struct x86/tss: Move I/O bitmap data into a seperate struct x86/io: Speedup schedule out of I/O bitmap user x86/ioperm: Avoid bitmap allocation if no permissions are set x86/ioperm: Simplify first ioperm() invocation logic x86/iopl: Cleanup include maze x86/tss: Fix and move VMX BUILD_BUG_ON() x86/cpu: Unify cpu_init() ... |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
apic.c | ||
debugfs.c | ||
debugfs.h | ||
efi.c | ||
enlighten.c | ||
enlighten_hvm.c | ||
enlighten_pv.c | ||
enlighten_pvh.c | ||
grant-table.c | ||
irq.c | ||
mmu.c | ||
mmu.h | ||
mmu_hvm.c | ||
mmu_pv.c | ||
multicalls.c | ||
multicalls.h | ||
p2m.c | ||
pci-swiotlb-xen.c | ||
platform-pci-unplug.c | ||
pmu.c | ||
pmu.h | ||
setup.c | ||
smp.c | ||
smp.h | ||
smp_hvm.c | ||
smp_pv.c | ||
spinlock.c | ||
suspend.c | ||
suspend_hvm.c | ||
suspend_pv.c | ||
time.c | ||
trace.c | ||
vdso.h | ||
vga.c | ||
xen-asm.S | ||
xen-asm_32.S | ||
xen-asm_64.S | ||
xen-head.S | ||
xen-ops.h |