1. 31 Mar, 2017 7 commits
    • Arnd Bergmann's avatar
      Merge tag 'v4.12-rockchip-dts64-symlinks-1' of... · 9720a9a3
      Arnd Bergmann authored
      Merge tag 'v4.12-rockchip-dts64-symlinks-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into next/dt64
      
      Pull "Rockchip dts64 updates (using arm/arm64 symlinks) for 4.12 part1" from Heiko Stübner
      
      Rockchip dts changes based on the newly created arm/arm64 symlinks.
      The core addition is the support for the rk3399-based Gru family of
      ChromeOS devices, like the Kevin board which is the recently released
      Samsung Chromebook Plus. Additionally the usb3 controllers are added
      to rk3399 as they're used on Gru devices and even without full type-c
      support they can at least drive usb2 devices already.
      
      * tag 'v4.12-rockchip-dts64-symlinks-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
        arm64: dts: rockchip: add regulator info for Kevin digitizer
        arm64: dts: rockchip: describe Gru/Kevin OPPs + CPU regulators
        arm64: dts: rockchip: add Gru/Kevin DTS
        dt-bindings: Document rk3399 Gru/Kevin
        arm64: dts: rockchip: support dwc3 USB for rk3399
      9720a9a3
    • Arnd Bergmann's avatar
      Merge tag 'v4.12-rockchip-dts64-1' of... · a5cd01ff
      Arnd Bergmann authored
      Merge tag 'v4.12-rockchip-dts64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into next/dt64
      
      Pull "Rockchip dts64 updates for 4.12 part1" from Heiko Stübner:
      
      Contains various changes for the rk3368 (dma, i2s, disable mailbox per
      default, mmc-resets) and also removes the wrongly added idle states, that
      do not match the hardware's capabilities, as well as some general rk3399
      pcie fixes as well as also the mmc resets.
      
      * tag 'v4.12-rockchip-dts64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
        arm64: dts: rockchip: fix PCIe domain number for rk3399
        arm64: dts: rockchip: add rk3399 dw-mmc resets
        arm64: dts: rockchip: add rk3368 dw-mmc resets
        arm64: dts: rockchip: disable mailbox of RK3368 SoCs per default
        arm64: dts: rockchip: add i2s nodes support for RK3368 SoCs
        arm64: dts: rockchip: add dmac nodes for rk3368 SoCs
        arm64: dts: rockchip: remove wrongly added idle states on rk3368
        arm64: dts: rockchip: sort rk3399-pcie by unit address
      a5cd01ff
    • Arnd Bergmann's avatar
      Merge tag 'arm-soc/for-4.12/devicetree-arm64' of http://github.com/Broadcom/stblinux into next/dt64 · bda484e7
      Arnd Bergmann authored
      Pull "Broadcom devicetree-arm64 changes for 4.12" from Florian Fainelli:
      
      This pull request contains Broadcom ARM64-based SoCs Device Tree updates for
      4.12, please pull the following:
      
      - Rob enables the cryptographic block on Northstar 2 (SPU) by adding the proper
        Device Tree nodes
      
      - Jon replaces all occurences of: status = "ok" with status = "okay" to better
        conform to the Device Tree specification
      
      * tag 'arm-soc/for-4.12/devicetree-arm64' of http://github.com/Broadcom/stblinux:
        arm64: dts: NS2: convert "ok" to "okay"
        arm64: dts: NS2: Add Broadcom SPU driver DT entry
      bda484e7
    • Arnd Bergmann's avatar
      Merge tag 'mvebu-dt64-4.12-1' of git://git.infradead.org/linux-mvebu into next/dt64 · 8e8c7253
      Arnd Bergmann authored
      Pull "mvebu dt64 for 4.12 (part 1)" from Gregory CLEMENT:
      
      - Add RTC support on Armada 7k/8k
      - Improve i2c support on Armada 37xx
      - Add gpio expander and RTC on Armada 3720 board
      - Improve USB3 support on Armada 37xx
      - Add network support on Armada 7k/8k
      
      * tag 'mvebu-dt64-4.12-1' of git://git.infradead.org/linux-mvebu:
        arm64: marvell: dts: add PPv2.2 description to Armada 7K/8K
        ARM64: dts: marvell: armada-3720 add RTC support
        ARM64: dts: marvell: armada-3720-db: Add phy for USB3
        ARM64: dts: marvell: armada-37xx: Add clock resource for USB3
        ARM64: dts: marvell: armada-37xx: Fix interrupt mapping for USB3
        ARM64: dts: marvell: armada-3720-db: add gpio expander
        ARM64: dts: marvell: armada37xx: add address and size property for i2c cells
        arm64: dts: marvell: add RTC description for Armada 7K/8K
      8e8c7253
    • Arnd Bergmann's avatar
      Merge tag 'uniphier-dt64-v4.12' of... · 6cd8eaac
      Arnd Bergmann authored
      Merge tag 'uniphier-dt64-v4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-uniphier into next/dt64
      
      Pull "UniPhier ARM64 SoC DT updates for v4.12" from Masahiro Yamada:
      
      - Fix W=* build warnings
      - Add pinctrl properties to eMMC nodes
      - Fix resets properties of USB nodes
      
      * tag 'uniphier-dt64-v4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-uniphier:
        arm64: dts: uniphier: re-order reset deassertion of USB of LD11
        arm64: dts: uniphier: add pinctrl property to eMMC node for LD11/LD20
        arm64: dts: uniphier: move memory node below aliases node
        arm64: dts: uniphier: fix no unit name warnings
      6cd8eaac
    • Jayachandran C's avatar
      arm64: dts: move from ARCH_VULCAN to ARCH_THUNDER2 · 517b311e
      Jayachandran C authored
      Move and update device tree files as part of transition from Broadcom
      Vulcan to Cavium ThunderX2.
      
      The changes are to:
       * rename dts/broadcom/vulcan.dtsi to cavium/thunder2-99xx.dtsi,
         update cpu cores to be "cavium,thunder2", and update SoC to be
         "cavium,thunderx2-cn9900"
       * move SoC dts/broadcom/vulcan-eval.dtsi to cavium/thunder2-99xx.dtsi
         and update board name string
       * Update dts/broadcom/Makefile not to build vulcan dtbs
       * Update dts/cavium/Makefile to build thunder2 dtbs
      
      No changes to the dts contents except the updated "compatible" and
      "model" properties.
      Signed-off-by: default avatarJayachandran C <jnair@caviumnetworks.com>
      Reviewed-by: default avatarMatthias Brugger <matthias.bgg@gmail.com>
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      517b311e
    • Jayachandran C's avatar
      dt-bindings: Add arm64 ARCH_THUNDER2 platform documentation · 8aac4bc5
      Jayachandran C authored
      Add documentation for Cavium's ThunderX2 CN99XX ARM64 processor. This
      SoC will use "cavium,thunderx2-cn9900" as the compatible property.
      
      Also add a documentation entry for the "cavium,thunder2" cpu core
      present in these SoCs.
      Signed-off-by: default avatarJayachandran C <jnair@caviumnetworks.com>
      Acked-by: default avatarRob Herring <robh@kernel.org>
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      8aac4bc5
  2. 23 Mar, 2017 5 commits
  3. 22 Mar, 2017 16 commits
  4. 15 Mar, 2017 1 commit
  5. 13 Mar, 2017 4 commits
  6. 12 Mar, 2017 6 commits
    • Linus Torvalds's avatar
      Linux 4.11-rc2 · 4495c08e
      Linus Torvalds authored
      4495c08e
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 56b24d1b
      Linus Torvalds authored
      Pull s390 fixes from Martin Schwidefsky:
      
       - four patches to get the new cputime code in shape for s390
      
       - add the new statx system call
      
       - a few bug fixes
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390: wire up statx system call
        KVM: s390: Fix guest migration for huge guests resulting in panic
        s390/ipl: always use load normal for CCW-type re-IPL
        s390/timex: micro optimization for tod_to_ns
        s390/cputime: provide archicture specific cputime_to_nsecs
        s390/cputime: reset all accounting fields on fork
        s390/cputime: remove last traces of cputime_t
        s390: fix in-kernel program checks
        s390/crypt: fix missing unlock in ctr_paes_crypt on error path
      56b24d1b
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5a45a5a8
      Linus Torvalds authored
      Pull x86 fixes from Thomas Gleixner:
      
       - a fix for the kexec/purgatory regression which was introduced in the
         merge window via an innocent sparse fix. We could have reverted that
         commit, but on deeper inspection it turned out that the whole
         machinery is neither documented nor robust. So a proper cleanup was
         done instead
      
       - the fix for the TLB flush issue which was discovered recently
      
       - a simple typo fix for a reboot quirk
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/tlb: Fix tlb flushing when lguest clears PGE
        kexec, x86/purgatory: Unbreak it and clean it up
        x86/reboot/quirks: Fix typo in ASUS EeeBook X205TA reboot quirk
      5a45a5a8
    • Linus Torvalds's avatar
      Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ecade114
      Linus Torvalds authored
      Pull irq fixes from Thomas Gleixner:
      
       - a workaround for a GIC erratum
      
       - a missing stub function for CONFIG_IRQDOMAIN=n
      
       - fixes for a couple of type inconsistencies
      
      * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        irqchip/crossbar: Fix incorrect type of register size
        irqchip/gicv3-its: Add workaround for QDF2400 ITS erratum 0065
        irqdomain: Add empty irq_domain_check_msi_remap
        irqchip/crossbar: Fix incorrect type of local variables
      ecade114
    • Masahiro Yamada's avatar
      arm64: dts: uniphier: re-order reset deassertion of USB of LD11 · 7a201e31
      Masahiro Yamada authored
      Deassert the bit in the System Control block before the MIO block.
      Signed-off-by: default avatarMasahiro Yamada <yamada.masahiro@socionext.com>
      7a201e31
    • Daniel Borkmann's avatar
      x86/tlb: Fix tlb flushing when lguest clears PGE · 2c4ea6e2
      Daniel Borkmann authored
      Fengguang reported random corruptions from various locations on x86-32
      after commits d2852a22 ("arch: add ARCH_HAS_SET_MEMORY config") and
      9d876e79 ("bpf: fix unlocking of jited image when module ronx not set")
      that uses the former. While x86-32 doesn't have a JIT like x86_64, the
      bpf_prog_lock_ro() and bpf_prog_unlock_ro() got enabled due to
      ARCH_HAS_SET_MEMORY, whereas Fengguang's test kernel doesn't have module
      support built in and therefore never had the DEBUG_SET_MODULE_RONX setting
      enabled.
      
      After investigating the crashes further, it turned out that using
      set_memory_ro() and set_memory_rw() didn't have the desired effect, for
      example, setting the pages as read-only on x86-32 would still let
      probe_kernel_write() succeed without error. This behavior would manifest
      itself in situations where the vmalloc'ed buffer was accessed prior to
      set_memory_*() such as in case of bpf_prog_alloc(). In cases where it
      wasn't, the page attribute changes seemed to have taken effect, leading to
      the conclusion that a TLB invalidate didn't happen. Moreover, it turned out
      that this issue reproduced with qemu in "-cpu kvm64" mode, but not for
      "-cpu host". When the issue occurs, change_page_attr_set_clr() did trigger
      a TLB flush as expected via __flush_tlb_all() through cpa_flush_range(),
      though.
      
      There are 3 variants for issuing a TLB flush: invpcid_flush_all() (depends
      on CPU feature bits X86_FEATURE_INVPCID, X86_FEATURE_PGE), cr4 based flush
      (depends on X86_FEATURE_PGE), and cr3 based flush.  For "-cpu host" case in
      my setup, the flush used invpcid_flush_all() variant, whereas for "-cpu
      kvm64", the flush was cr4 based. Switching the kvm64 case to cr3 manually
      worked fine, and further investigating the cr4 one turned out that
      X86_CR4_PGE bit was not set in cr4 register, meaning the
      __native_flush_tlb_global_irq_disabled() wrote cr4 twice with the same
      value instead of clearing X86_CR4_PGE in the first write to trigger the
      flush.
      
      It turned out that X86_CR4_PGE was cleared from cr4 during init from
      lguest_arch_host_init() via adjust_pge(). The X86_FEATURE_PGE bit is also
      cleared from there due to concerns of using PGE in guest kernel that can
      lead to hard to trace bugs (see bff672e6 ("lguest: documentation V:
      Host") in init()). The CPU feature bits are cleared in dynamic
      boot_cpu_data, but they never propagated to __flush_tlb_all() as it uses
      static_cpu_has() instead of boot_cpu_has() for testing which variant of TLB
      flushing to use, meaning they still used the old setting of the host
      kernel.
      
      Clearing via setup_clear_cpu_cap(X86_FEATURE_PGE) so this would propagate
      to static_cpu_has() checks is too late at this point as sections have been
      patched already, so for now, it seems reasonable to switch back to
      boot_cpu_has(X86_FEATURE_PGE) as it was prior to commit c109bf95
      ("x86/cpufeature: Remove cpu_has_pge"). This lets the TLB flush trigger via
      cr3 as originally intended, properly makes the new page attributes visible
      and thus fixes the crashes seen by Fengguang.
      
      Fixes: c109bf95 ("x86/cpufeature: Remove cpu_has_pge")
      Reported-by: default avatarFengguang Wu <fengguang.wu@intel.com>
      Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
      Cc: bp@suse.de
      Cc: Kees Cook <keescook@chromium.org>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: netdev@vger.kernel.org
      Cc: Rusty Russell <rusty@rustcorp.com.au>
      Cc: Alexei Starovoitov <ast@kernel.org>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: lkp@01.org
      Cc: Laura Abbott <labbott@redhat.com>
      Cc: stable@vger.kernel.org
      Link: http://lkml.kernrl.org/r/20170301125426.l4nf65rx4wahohyl@wfg-t540p.sh.intel.com
      Link: http://lkml.kernel.org/r/25c41ad9eca164be4db9ad84f768965b7eb19d9e.1489191673.git.daniel@iogearbox.netSigned-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      2c4ea6e2
  7. 11 Mar, 2017 1 commit
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 106e4da6
      Linus Torvalds authored
      Pull KVM fixes from Radim Krčmář:
       "ARM updates from Marc Zyngier:
         - vgic updates:
           - Honour disabling the ITS
           - Don't deadlock when deactivating own interrupts via MMIO
           - Correctly expose the lact of IRQ/FIQ bypass on GICv3
      
         - I/O virtualization:
           - Make KVM_CAP_NR_MEMSLOTS big enough for large guests with many
             PCIe devices
      
         - General bug fixes:
           - Gracefully handle exception generated with syndroms that the host
             doesn't understand
           - Properly invalidate TLBs on VHE systems
      
        x86:
         - improvements in emulation of VMCLEAR, VMX MSR bitmaps, and VCPU
           reset
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        KVM: nVMX: do not warn when MSR bitmap address is not backed
        KVM: arm64: Increase number of user memslots to 512
        KVM: arm/arm64: Remove KVM_PRIVATE_MEM_SLOTS definition that are unused
        KVM: arm/arm64: Enable KVM_CAP_NR_MEMSLOTS on arm/arm64
        KVM: Add documentation for KVM_CAP_NR_MEMSLOTS
        KVM: arm/arm64: VGIC: Fix command handling while ITS being disabled
        arm64: KVM: Survive unknown traps from guests
        arm: KVM: Survive unknown traps from guests
        KVM: arm/arm64: Let vcpu thread modify its own active state
        KVM: nVMX: reset nested_run_pending if the vCPU is going to be reset
        kvm: nVMX: VMCLEAR should not cause the vCPU to shut down
        KVM: arm/arm64: vgic-v3: Don't pretend to support IRQ/FIQ bypass
        arm64: KVM: VHE: Clear HCR_TGE when invalidating guest TLBs
      106e4da6