1. 16 Dec, 2014 29 commits
  2. 10 Dec, 2014 11 commits
    • Linus Torvalds's avatar
      Merge branch 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3a5dc1fa
      Linus Torvalds authored
      Pull x86 microcode loading updates from Ingo Molnar:
       "The main changes in this cycle are:
      
         - Reload microcode when resuming and the case when only the early
           loader has been utilized.  (Borislav Petkov)
      
         - Also, do not load the driver on paravirt guests.  (Boris
           Ostrovsky)"
      
      * 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/microcode/intel: Fish out the stashed microcode for the BSP
        x86, microcode: Reload microcode on resume
        x86, microcode: Don't initialize microcode code on paravirt
        x86, microcode, intel: Drop unused parameter
        x86, microcode, AMD: Do not use smp_processor_id() in preemtible context
      3a5dc1fa
    • Linus Torvalds's avatar
      Merge branch 'x86-vdso-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3100e448
      Linus Torvalds authored
      Pull x86 vdso updates from Ingo Molnar:
       "Various vDSO updates from Andy Lutomirski, mostly cleanups and
        reorganization to improve maintainability, but also some
        micro-optimizations and robustization changes"
      
      * 'x86-vdso-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86_64/vsyscall: Restore orig_ax after vsyscall seccomp
        x86_64: Add a comment explaining the TASK_SIZE_MAX guard page
        x86_64,vsyscall: Make vsyscall emulation configurable
        x86_64, vsyscall: Rewrite comment and clean up headers in vsyscall code
        x86_64, vsyscall: Turn vsyscalls all the way off when vsyscall==none
        x86,vdso: Use LSL unconditionally for vgetcpu
        x86: vdso: Fix build with older gcc
        x86_64/vdso: Clean up vgetcpu init and merge the vdso initcalls
        x86_64/vdso: Remove jiffies from the vvar page
        x86/vdso: Make the PER_CPU segment 32 bits
        x86/vdso: Make the PER_CPU segment start out accessed
        x86/vdso: Change the PER_CPU segment to use struct desc_struct
        x86_64/vdso: Move getcpu code from vsyscall_64.c to vdso/vma.c
        x86_64/vsyscall: Move all of the gate_area code to vsyscall_64.c
      3100e448
    • Linus Torvalds's avatar
      Merge branch 'x86-ras-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c9f861c7
      Linus Torvalds authored
      Pull x86 RAS update from Ingo Molnar:
       "The biggest change in this cycle is better support for UCNA
        (UnCorrected No Action) events:
      
          "Handle all uncorrected error reports in the same way (soft
           offline the page). We used to only do that for SRAO
           (software recoverable action optional) machine checks, but
           it makes sense to also do it for UCNA (UnCorrected No
           Action) logs found by CMCI or polling."
      
        plus various x86 MCE handling updates and fixes"
      
      * 'x86-ras-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/mce: Spell "panicked" correctly
        x86, mce: Support memory error recovery for both UCNA and Deferred error in machine_check_poll
        x86, mce, severity: Extend the the mce_severity mechanism to handle UCNA/DEFERRED error
        x86, MCE, AMD: Assign interrupt handler only when bank supports it
        x86, MCE, AMD: Drop software-defined bank in error thresholding
        x86, MCE, AMD: Move invariant code out from loop body
        x86, MCE, AMD: Correct thresholding error logging
        x86, MCE, AMD: Use macros to compute bank MSRs
        RAS, HWPOISON: Fix wrong error recovery status
        GHES: Make ghes_estatus_caches static
        APEI, GHES: Cleanup unnecessary function for lockless list
      c9f861c7
    • Linus Torvalds's avatar
      Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a023748d
      Linus Torvalds authored
      Pull x86 mm tree changes from Ingo Molnar:
       "The biggest change is full PAT support from Jürgen Gross:
      
           The x86 architecture offers via the PAT (Page Attribute Table) a
           way to specify different caching modes in page table entries.  The
           PAT MSR contains 8 entries each specifying one of 6 possible cache
           modes.  A pte references one of those entries via 3 bits:
           _PAGE_PAT, _PAGE_PWT and _PAGE_PCD.
      
           The Linux kernel currently supports only 4 different cache modes.
           The PAT MSR is set up in a way that the setting of _PAGE_PAT in a
           pte doesn't matter: the top 4 entries in the PAT MSR are the same
           as the 4 lower entries.
      
           This results in the kernel not supporting e.g. write-through mode.
           Especially this cache mode would speed up drivers of video cards
           which now have to use uncached accesses.
      
           OTOH some old processors (Pentium) don't support PAT correctly and
           the Xen hypervisor has been using a different PAT MSR configuration
           for some time now and can't change that as this setting is part of
           the ABI.
      
           This patch set abstracts the cache mode from the pte and introduces
           tables to translate between cache mode and pte bits (the default
           cache mode "write back" is hard-wired to PAT entry 0).  The tables
           are statically initialized with values being compatible to old
           processors and current usage.  As soon as the PAT MSR is changed
           (or - in case of Xen - is read at boot time) the tables are changed
           accordingly.  Requests of mappings with special cache modes are
           always possible now, in case they are not supported there will be a
           fallback to a compatible but slower mode.
      
           Summing it up, this patch set adds the following features:
      
            - capability to support WT and WP cache modes on processors with
              full PAT support
      
            - processors with no or uncorrect PAT support are still working as
              today, even if WT or WP cache mode are selected by drivers for
              some pages
      
            - reduction of Xen special handling regarding cache mode
      
        Another change is a boot speedup on ridiculously large RAM systems,
        plus other smaller fixes"
      
      * 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (22 commits)
        x86: mm: Move PAT only functions to mm/pat.c
        xen: Support Xen pv-domains using PAT
        x86: Enable PAT to use cache mode translation tables
        x86: Respect PAT bit when copying pte values between large and normal pages
        x86: Support PAT bit in pagetable dump for lower levels
        x86: Clean up pgtable_types.h
        x86: Use new cache mode type in memtype related functions
        x86: Use new cache mode type in mm/ioremap.c
        x86: Use new cache mode type in setting page attributes
        x86: Remove looking for setting of _PAGE_PAT_LARGE in pageattr.c
        x86: Use new cache mode type in track_pfn_remap() and track_pfn_insert()
        x86: Use new cache mode type in mm/iomap_32.c
        x86: Use new cache mode type in asm/pgtable.h
        x86: Use new cache mode type in arch/x86/mm/init_64.c
        x86: Use new cache mode type in arch/x86/pci
        x86: Use new cache mode type in drivers/video/fbdev/vermilion
        x86: Use new cache mode type in drivers/video/fbdev/gbefb.c
        x86: Use new cache mode type in include/asm/fb.h
        x86: Make page cache mode a real type
        x86: mm: Use 2GB memory block size on large-memory x86-64 systems
        ...
      a023748d
    • Linus Torvalds's avatar
      Merge branches 'x86-platform-for-linus' and 'x86-uv-for-linus' of... · 773fed91
      Linus Torvalds authored
      Merge branches 'x86-platform-for-linus' and 'x86-uv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
      
      Pull x86 platform changes from Ingo Molnar:
       "A handful of numachip APIC driver updates/fixes, and two small SGI/UV
        fixes"
      
      * 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: numachip: APIC driver cleanups
        x86: numachip: Elide self-IPI ICR polling
        x86: numachip: Fix 16-bit APIC ID truncation
      
      * 'x86-uv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: UV BAU: Increase maximum CPUs per socket/hub
        x86: UV BAU: Avoid NULL pointer reference in ptc_seq_show
      773fed91
    • Linus Torvalds's avatar
      Merge branch 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 81395481
      Linus Torvalds authored
      Pull EFI updates from Ingo Molnar:
       "Changes in this cycle are:
      
         - support module unload for efivarfs (Mathias Krause)
      
         - another attempt at moving x86 to libstub taking advantage of the
           __pure attribute (Ard Biesheuvel)
      
         - add EFI runtime services section to ptdump (Mathias Krause)"
      
      * 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, ptdump: Add section for EFI runtime services
        efi/x86: Move x86 back to libstub
        efivarfs: Allow unloading when build as module
      81395481
    • Linus Torvalds's avatar
      Merge branches 'x86-build-for-linus', 'x86-cleanups-for-linus' and... · 206f18f2
      Linus Torvalds authored
      Merge branches 'x86-build-for-linus', 'x86-cleanups-for-linus' and 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
      
      Pull x86 build, cleanup and defconfig updates from Ingo Molnar:
       "A single minor build change to suppress a repetitive build messages,
        misc cleanups and a defconfig update"
      
      * 'x86-build-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/purgatory, build: Suppress kexec-purgatory.c is up to date message
      
      * 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, CPU, AMD: Move K8 TLB flush filter workaround to K8 code
        x86, espfix: Remove stale ptemask
        x86, msr: Use seek definitions instead of hard-coded values
        x86, msr: Convert printk to pr_foo()
        x86, msr: Use PTR_ERR_OR_ZERO
        x86/simplefb: Use PTR_ERR_OR_ZERO
        x86/sysfb: Use PTR_ERR_OR_ZERO
        x86, cpuid: Use PTR_ERR_OR_ZERO
      
      * 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/kconfig/defconfig: Enable CONFIG_FHANDLE=y
      206f18f2
    • Linus Torvalds's avatar
      Merge branch 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · b6444bd0
      Linus Torvalds authored
      Pull x86 boot and percpu updates from Ingo Molnar:
       "This tree contains a bootable images documentation update plus three
        slightly misplaced x86/asm percpu changes/optimizations"
      
      * 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86-64: Use RIP-relative addressing for most per-CPU accesses
        x86-64: Handle PC-relative relocations on per-CPU data
        x86: Convert a few more per-CPU items to read-mostly ones
        x86, boot: Document intermediates more clearly
      b6444bd0
    • Linus Torvalds's avatar
      Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9d0cf6f5
      Linus Torvalds authored
      Pull x86 asm updates from Ingo Molnar:
       "Misc changes:
      
         - context switch micro-optimization
         - debug printout micro-optimization
         - comment enhancements and typo fix"
      
      * 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: Replace seq_printf() with seq_puts()
        x86/asm: Fix typo in arch/x86/kernel/asm_offset_64.c
        sched/x86: Add a comment clarifying LDT context switching
        sched/x86_64: Don't save flags on context switch
      9d0cf6f5
    • Linus Torvalds's avatar
      Merge branch 'timers-2038-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · d8201269
      Linus Torvalds authored
      Pull more 2038 timer work from Thomas Gleixner:
       "Two more patches for the ongoing 2038 work:
      
         - New accessors to clock MONOTONIC and REALTIME seconds
      
        This is a seperate branch as Arnd has follow up work depending on
        this"
      
      * 'timers-2038-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        timekeeping: Provide y2038 safe accessor to the seconds portion of CLOCK_REALTIME
        timekeeping: Provide fast accessor to the seconds part of CLOCK_MONOTONIC
      d8201269
    • Linus Torvalds's avatar
      Merge branch 'x86-mpx-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3eb5b893
      Linus Torvalds authored
      Pull x86 MPX support from Thomas Gleixner:
       "This enables support for x86 MPX.
      
        MPX is a new debug feature for bound checking in user space.  It
        requires kernel support to handle the bound tables and decode the
        bound violating instruction in the trap handler"
      
      * 'x86-mpx-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        asm-generic: Remove asm-generic arch_bprm_mm_init()
        mm: Make arch_unmap()/bprm_mm_init() available to all architectures
        x86: Cleanly separate use of asm-generic/mm_hooks.h
        x86 mpx: Change return type of get_reg_offset()
        fs: Do not include mpx.h in exec.c
        x86, mpx: Add documentation on Intel MPX
        x86, mpx: Cleanup unused bound tables
        x86, mpx: On-demand kernel allocation of bounds tables
        x86, mpx: Decode MPX instruction to get bound violation information
        x86, mpx: Add MPX-specific mmap interface
        x86, mpx: Introduce VM_MPX to indicate that a VMA is MPX specific
        x86, mpx: Add MPX to disabled features
        ia64: Sync struct siginfo with general version
        mips: Sync struct siginfo with general version
        mpx: Extend siginfo structure to include bound violation information
        x86, mpx: Rename cfg_reg_u and status_reg
        x86: mpx: Give bndX registers actual names
        x86: Remove arbitrary instruction size limit in instruction decoder
      3eb5b893