Skip to content
  1. Oct 19, 2014
    • Andy Lutomirski's avatar
      x86,kvm,vmx: Preserve CR4 across VM entry · d974baa3
      Andy Lutomirski authored
      
      
      CR4 isn't constant; at least the TSD and PCE bits can vary.
      
      TBH, treating CR0 and CR3 as constant scares me a bit, too, but it looks
      like it's correct.
      
      This adds a branch and a read from cr4 to each vm entry.  Because it is
      extremely likely that consecutive entries into the same vcpu will have
      the same host cr4 value, this fixes up the vmcs instead of restoring cr4
      after the fact.  A subsequent patch will add a kernel-wide cr4 shadow,
      reducing the overhead in the common case to just two memory reads and a
      branch.
      
      Signed-off-by: default avatarAndy Lutomirski <luto@amacapital.net>
      Acked-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      Cc: stable@vger.kernel.org
      Cc: Petr Matousek <pmatouse@redhat.com>
      Cc: Gleb Natapov <gleb@kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d974baa3
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 2e923b02
      Linus Torvalds authored
      Pull networking fixes from David Miller:
      
       1) Include fixes for netrom and dsa (Fabian Frederick and Florian
          Fainelli)
      
       2) Fix FIXED_PHY support in stmmac, from Giuseppe CAVALLARO.
      
       3) Several SKB use after free fixes (vxlan, openvswitch, vxlan,
          ip_tunnel, fou), from Li ROngQing.
      
       4) fec driver PTP support fixes from Luwei Zhou and Nimrod Andy.
      
       5) Use after free in virtio_net, from Michael S Tsirkin.
      
       6) Fix flow mask handling for megaflows in openvswitch, from Pravin B
          Shelar.
      
       7) ISDN gigaset and capi bug fixes from Tilman Schmidt.
      
       8) Fix route leak in ip_send_unicast_reply(), from Vasily Averin.
      
       9) Fix two eBPF JIT bugs on x86, from Alexei Starovoitov.
      
      10) TCP_SKB_CB() reorganization caused a few regressions, fixed by Cong
          Wang and Eric Dumazet.
      
      11) Don't overwrite end of SKB when parsing malformed sctp ASCONF
          chunks, from Daniel Borkmann.
      
      12) Don't call sock_kfree_s() with NULL pointers, this function also ...
      2e923b02
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc · ffd8221b
      Linus Torvalds authored
      Pull Sparc bugfix from David Miller:
       "Sparc64 AES ctr mode bug fix"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
        sparc64: Fix FPU register corruption with AES crypto offload.
      ffd8221b
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide · e0a9272c
      Linus Torvalds authored
      Pull IDE cleanup from David Miller:
       "One IDE driver cleanup"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide:
        Drivers: ide: Remove typedef atiixp_ide_timing
      e0a9272c
    • Catalin Marinas's avatar
      futex: Ensure get_futex_key_refs() always implies a barrier · 76835b0e
      Catalin Marinas authored
      Commit b0c29f79 (futexes: Avoid taking the hb->lock if there's
      nothing to wake up) changes the futex code to avoid taking a lock when
      there are no waiters. This code has been subsequently fixed in commit
      11d4616b
      
       (futex: revert back to the explicit waiter counting code).
      Both the original commit and the fix-up rely on get_futex_key_refs() to
      always imply a barrier.
      
      However, for private futexes, none of the cases in the switch statement
      of get_futex_key_refs() would be hit and the function completes without
      a memory barrier as required before checking the "waiters" in
      futex_wake() -> hb_waiters_pending(). The consequence is a race with a
      thread waiting on a futex on another CPU, allowing the waker thread to
      read "waiters == 0" while the waiter thread to have read "futex_val ==
      locked" (in kernel).
      
      Without this fix, the problem (user space deadlocks) can be seen with
      Android bionic's mutex implementation on an arm64 multi-cluster system.
      
      Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      Reported-by: default avatarMatteo Franchin <Matteo.Franchin@arm.com>
      Fixes: b0c29f79
      
       (futexes: Avoid taking the hb->lock if there's nothing to wake up)
      Acked-by: default avatarDavidlohr Bueso <dave@stgolabs.net>
      Tested-by: default avatarMike Galbraith <umgwanakikbuti@gmail.com>
      Cc: <stable@vger.kernel.org>
      Cc: Darren Hart <dvhart@linux.intel.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      76835b0e
  2. Oct 18, 2014
  3. Oct 17, 2014
  4. Oct 16, 2014