From: Ingo Molnar <mingo@kernel.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-kernel@vger.kernel.org,
Thomas Gleixner <tglx@linutronix.de>,
Borislav Petkov <bp@alien8.de>, Andy Lutomirski <luto@kernel.org>,
"H. Peter Anvin" <hpa@zytor.com>,
Peter Zijlstra <a.p.zijlstra@chello.nl>,
Andrew Morton <akpm@linux-foundation.org>
Subject: [GIT PULL] x86/asm changes for v4.6
Date: Mon, 14 Mar 2016 14:03:20 +0100 [thread overview]
Message-ID: <20160314130320.GA20607@gmail.com> (raw)
Linus,
Please pull the latest x86-asm-for-linus git tree from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86-asm-for-linus
# HEAD: d05004944206cbbf1c453e179768163731c7c6f1 x86/cpufeature: Enable new AVX-512 features
This is another big update. Main changes are:
- lots of x86 system call (and other traps/exceptions) entry code enhancements.
In particular the complex parts of the 64-bit entry code have been
migrated to C code as well, and a number of dusty corners have been refreshed.
(Andy Lutomirski)
- vDSO special mapping robustification and general cleanups (Andy Lutomirski)
- cpufeature refactoring, cleanups and speedups (Borislav Petkov)
- lots of other changes ...
out-of-topic modifications in x86-asm-for-linus:
--------------------------------------------------
drivers/cpufreq/intel_pstate.c # bc696ca05f5a: x86/cpufeature: Replace the
fs/btrfs/disk-io.c # bc696ca05f5a: x86/cpufeature: Replace the
include/linux/mm.h # 1745cbc5d0de: mm: Add vm_insert_pfn_prot()
include/linux/mm_types.h # f872f5400cc0: mm: Add a vm_special_mapping
kernel/events/uprobes.c # 869ae76147ff: uprobes: __create_xol_area()
lib/atomic64_test.c # cd4d09ec6f6c: x86/cpufeature: Carve out X8
mm/memory.c # 1745cbc5d0de: mm: Add vm_insert_pfn_prot()
mm/mmap.c # f872f5400cc0: mm: Add a vm_special_mapping
tools/testing/selftests/x86/Makefile# 6c25da5ad55d: x86/signal/64: Re-add suppor
# e21d50f3864e: selftests/x86: Add check_ini
# c31b34255b48: selftests/x86: Extend Makefi
tools/testing/selftests/x86/check_initial_reg_state.c# e21d50f3864e: selftests/x86: Add check_ini
tools/testing/selftests/x86/ptrace_syscall.c# 403613432222: selftests/x86: Add a test fo
# adcfd23ead69: selftests/x86: Fix some erro
tools/testing/selftests/x86/sigreturn.c# 4f6c89382293: selftests/x86: Add tests for
tools/testing/selftests/x86/syscall_nt.c# a318beea224d: selftests/x86: In syscall_nt
Thanks,
Ingo
------------------>
Alexander Kuleshov (3):
x86/asm/entry: Remove unused SAVE_ALL/RESTORE_ALL macros for !CONFIG_x86_64
x86/asm: Remove unused L3_PAGE_OFFSET
x86/entry/traps: Refactor preemption and interrupt flag handling
Andy Lutomirski (42):
mm: Add a vm_special_mapping.fault() method
mm: Add vm_insert_pfn_prot()
x86/vdso: Track each mm's loaded vDSO image as well as its base
x86/vdso: Use .fault for the vDSO text mapping
x86/vdso: Use ->fault() instead of remap_pfn_range() for the vvar mapping
x86/vdso: Disallow vvar access to vclock IO for never-used vclocks
selftests/x86: Extend Makefile to allow 64-bit-only tests
selftests/x86: Add check_initial_reg_state()
x86/syscalls: Refactor syscalltbl.sh
x86/syscalls: Remove __SYSCALL_COMMON and __SYSCALL_X32
x86/syscalls: Move compat syscall entry handling into syscalltbl.sh
x86/syscalls: Add syscall entry qualifiers
x86/entry/64: Always run ptregs-using syscalls on the slow path
x86/entry/64: Call all native slow-path syscalls with full pt-regs
x86/entry/64: Stop using int_ret_from_sys_call in ret_from_fork
x86/entry/64: Migrate the 64-bit syscall slow path to C
x86/entry/64: Fix an IRQ state error on ptregs-using syscalls
x86/entry/64: Fix fast-path syscall return register state
x86/syscalls/64: Mark sys_iopl() as using ptregs
x86/signal/64: Add a comment about sigcontext->fs and gs
x86/signal/64: Fix SS if needed when delivering a 64-bit signal
x86/signal/64: Re-add support for SS in the 64-bit signal context
selftests/x86: Add tests for UC_SIGCONTEXT_SS and UC_STRICT_RESTORE_SS
selftests/x86: Fix some error messages in ptrace_syscall
selftests/x86: Add a test for syscall restart under ptrace
x86/entry/compat: Keep TS_COMPAT set during signal delivery
x86/entry/32: Introduce and use X86_BUG_ESPFIX instead of paravirt_enabled
x86/asm-offsets: Remove PARAVIRT_enabled
selftests/x86: In syscall_nt, test NT|TF as well
x86/entry/compat: In SYSENTER, sink AC clearing below the existing FLAGS test
x86/entry/32: Filter NT and speed up AC filtering in SYSENTER
x86/entry/32: Restore FLAGS on SYSEXIT
x86/entry/traps: Clear TIF_BLOCKSTEP on all debug exceptions
x86/entry/traps: Clear DR6 early in do_debug() and improve the comment
x86/entry: Vastly simplify SYSENTER TF (single-step) handling
x86/entry: Only allocate space for tss_struct::SYSENTER_stack if needed
x86/entry/32: Simplify and fix up the SYSENTER stack #DB/NMI fixup
x86/entry/32: Add and check a stack canary for the SYSENTER stack
x86/entry: Remove TIF_SINGLESTEP entry work
x86/entry: Improve system call entry comments
x86/entry/32: Change INT80 to be an interrupt gate
x86/entry: Call enter_from_user_mode() with IRQs off
Borislav Petkov (9):
x86/cpufeature: Add AMD AVIC bit
x86/cpufeature: Carve out X86_FEATURE_*
x86/cpufeature: Replace the old static_cpu_has() with safe variant
x86/cpufeature: Get rid of the non-asm goto variant
x86/alternatives: Add an auxilary section
x86/vdso: Use static_cpu_has()
x86/cpufeature: Speed up cpu_feature_enabled()
x86/ftrace, x86/asm: Kill ftrace_caller_end label
x86/msr: Document msr-index.h rule for addition
Brian Gerst (1):
x86/alternatives: Discard dynamic check after init
Denys Vlasenko (1):
x86/asm/bitops: Force inlining of test_and_set_bit and friends
Dmitry V. Levin (1):
x86/signal: Cleanup get_nr_restart_syscall()
Fenghua Yu (1):
x86/cpufeature: Enable new AVX-512 features
Ingo Molnar (5):
Merge tag 'v4.5-rc1' into x86/asm, to refresh the branch before merging new changes
Merge branch 'x86/cpu' into x86/asm, to avoid conflict
Merge branch 'x86/urgent' into x86/asm, to pick up fixes
Merge tag 'v4.5-rc7' into x86/asm, to pick up SMAP fix
Merge branch 'x86-asm-for-linus' into tmp.tmp
Jianyu Zhan (1):
x86/entry/traps: Show unhandled signal for i386 in do_trap()
Josh Poimboeuf (2):
x86/asm: Clean up frame pointer macros
x86/asm: Add C versions of frame pointer macros
Matthew Wilcox (1):
x86/mm: Honour passed pgprot in track_pfn_insert() and track_pfn_remap()
Oleg Nesterov (1):
uprobes: __create_xol_area() must nullify xol_mapping.fault
Tony Luck (1):
x86/cpufeature: Create a new synthetic cpu capability for machine check recovery
==========
Documentation/kernel-parameters.txt | 2 +-
Documentation/x86/x86_64/boot-options.txt | 2 +
arch/x86/Kconfig.debug | 10 ---
arch/x86/boot/cpuflags.h | 2 +-
arch/x86/boot/mkcpustr.c | 2 +-
arch/x86/crypto/crc32-pclmul_glue.c | 2 +-
arch/x86/crypto/crc32c-intel_glue.c | 2 +-
arch/x86/crypto/crct10dif-pclmul_glue.c | 2 +-
arch/x86/entry/calling.h | 31 ---------
arch/x86/entry/common.c | 106 ++++++++++++++---------------
arch/x86/entry/entry_32.S | 268 +++++++++++++++++++++++++++++++++++++++++++++++-------------------------
arch/x86/entry/entry_64.S | 286 ++++++++++++++++++++++++++++++----------------------------------------------
arch/x86/entry/entry_64_compat.S | 102 +++++++++++++++++++---------
arch/x86/entry/syscall_32.c | 10 +--
arch/x86/entry/syscall_64.c | 13 ++--
arch/x86/entry/syscalls/syscall_64.tbl | 20 +++---
arch/x86/entry/syscalls/syscalltbl.sh | 58 ++++++++++++++--
arch/x86/entry/vdso/vdso2c.h | 7 --
arch/x86/entry/vdso/vdso32-setup.c | 1 -
arch/x86/entry/vdso/vdso32/system_call.S | 2 +-
arch/x86/entry/vdso/vma.c | 127 +++++++++++++++++++++-------------
arch/x86/entry/vsyscall/vsyscall_gtod.c | 9 ++-
arch/x86/include/asm/alternative.h | 6 --
arch/x86/include/asm/apic.h | 1 -
arch/x86/include/asm/arch_hweight.h | 2 +
arch/x86/include/asm/bitops.h | 36 +++++-----
arch/x86/include/asm/clocksource.h | 9 +--
arch/x86/include/asm/cmpxchg.h | 1 +
arch/x86/include/asm/cpufeature.h | 448 +++++++-----------------------------------------------------------------------------------------------------------------
arch/x86/include/asm/cpufeatures.h | 300 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
arch/x86/include/asm/desc_defs.h | 23 +++++++
arch/x86/include/asm/fpu/internal.h | 15 ++--
arch/x86/include/asm/frame.h | 59 ++++++++++------
arch/x86/include/asm/irq_work.h | 2 +-
arch/x86/include/asm/mce.h | 1 +
arch/x86/include/asm/mmu.h | 3 +-
arch/x86/include/asm/msr-index.h | 7 +-
arch/x86/include/asm/mwait.h | 2 +
arch/x86/include/asm/processor.h | 8 ++-
arch/x86/include/asm/proto.h | 15 +++-
arch/x86/include/asm/sighandling.h | 1 -
arch/x86/include/asm/smap.h | 2 +-
arch/x86/include/asm/smp.h | 1 -
arch/x86/include/asm/thread_info.h | 9 ++-
arch/x86/include/asm/tlbflush.h | 1 +
arch/x86/include/asm/uaccess_64.h | 2 +-
arch/x86/include/asm/vdso.h | 3 -
arch/x86/include/asm/vgtod.h | 6 ++
arch/x86/include/uapi/asm/sigcontext.h | 32 ++++++++-
arch/x86/include/uapi/asm/ucontext.h | 53 +++++++++++++--
arch/x86/kernel/apic/apic_numachip.c | 4 +-
arch/x86/kernel/asm-offsets.c | 1 -
arch/x86/kernel/asm-offsets_32.c | 7 +-
arch/x86/kernel/asm-offsets_64.c | 10 +--
arch/x86/kernel/cpu/Makefile | 2 +-
arch/x86/kernel/cpu/centaur.c | 2 +-
arch/x86/kernel/cpu/common.c | 39 +++++++----
arch/x86/kernel/cpu/cyrix.c | 1 +
arch/x86/kernel/cpu/intel.c | 2 +-
arch/x86/kernel/cpu/intel_cacheinfo.c | 2 +-
arch/x86/kernel/cpu/match.c | 2 +-
arch/x86/kernel/cpu/mcheck/mce.c | 13 ++++
arch/x86/kernel/cpu/mkcapflags.sh | 6 +-
arch/x86/kernel/cpu/mtrr/main.c | 2 +-
arch/x86/kernel/cpu/transmeta.c | 2 +-
arch/x86/kernel/e820.c | 1 +
arch/x86/kernel/fpu/xstate.c | 3 +
arch/x86/kernel/ftrace.c | 11 ++-
arch/x86/kernel/head_32.S | 2 +-
arch/x86/kernel/head_64.S | 1 -
arch/x86/kernel/hpet.c | 1 +
arch/x86/kernel/mcount_64.S | 14 ++--
arch/x86/kernel/msr.c | 2 +-
arch/x86/kernel/process.c | 3 +
arch/x86/kernel/signal.c | 127 +++++++++++++++++++++++++++-------
arch/x86/kernel/traps.c | 138 ++++++++++++++++++++++++-------------
arch/x86/kernel/verify_cpu.S | 2 +-
arch/x86/kernel/vm86_32.c | 2 +-
arch/x86/kernel/vmlinux.lds.S | 11 +++
arch/x86/lib/clear_page_64.S | 2 +-
arch/x86/lib/copy_page_64.S | 2 +-
arch/x86/lib/copy_user_64.S | 2 +-
arch/x86/lib/memcpy_64.S | 2 +-
arch/x86/lib/memmove_64.S | 2 +-
arch/x86/lib/memset_64.S | 2 +-
arch/x86/mm/pat.c | 4 +-
arch/x86/mm/setup_nx.c | 1 +
arch/x86/oprofile/op_model_amd.c | 1 -
arch/x86/um/asm/barrier.h | 2 +-
arch/x86/um/sys_call_table_32.c | 4 +-
arch/x86/um/sys_call_table_64.c | 7 +-
arch/x86/um/user-offsets.c | 6 +-
drivers/cpufreq/intel_pstate.c | 2 +-
fs/btrfs/disk-io.c | 2 +-
include/linux/mm.h | 2 +
include/linux/mm_types.h | 22 +++++-
kernel/events/uprobes.c | 1 +
lib/atomic64_test.c | 2 +-
mm/memory.c | 25 ++++++-
mm/mmap.c | 13 ++--
tools/testing/selftests/x86/Makefile | 17 +++--
tools/testing/selftests/x86/check_initial_reg_state.c | 109 +++++++++++++++++++++++++++++
tools/testing/selftests/x86/ptrace_syscall.c | 132 +++++++++++++++++++++++++++++++++++-
tools/testing/selftests/x86/sigreturn.c | 230 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--------
tools/testing/selftests/x86/syscall_nt.c | 57 +++++++++++++---
105 files changed, 1977 insertions(+), 1199 deletions(-)
create mode 100644 arch/x86/include/asm/cpufeatures.h
create mode 100644 tools/testing/selftests/x86/check_initial_reg_state.c
reply other threads:[~2016-03-14 13:03 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160314130320.GA20607@gmail.com \
--to=mingo@kernel.org \
--cc=a.p.zijlstra@chello.nl \
--cc=akpm@linux-foundation.org \
--cc=bp@alien8.de \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=luto@kernel.org \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.