1. 19 10月, 2014 5 次提交
    • A
      x86,kvm,vmx: Preserve CR4 across VM entry · d974baa3
      Andy Lutomirski 提交于
      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: NAndy Lutomirski <luto@amacapital.net>
      Acked-by: NPaolo Bonzini <pbonzini@redhat.com>
      Cc: stable@vger.kernel.org
      Cc: Petr Matousek <pmatouse@redhat.com>
      Cc: Gleb Natapov <gleb@kernel.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      d974baa3
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 2e923b02
      Linus Torvalds 提交于
      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 has
          the side effect of adjusting the socket memory usage.  From Cong Wang.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (90 commits)
        bna: fix skb->truesize underestimation
        net: dsa: add includes for ethtool and phy_fixed definitions
        openvswitch: Set flow-key members.
        netrom: use linux/uaccess.h
        dsa: Fix conversion from host device to mii bus
        tipc: fix bug in bundled buffer reception
        ipv6: introduce tcp_v6_iif()
        sfc: add support for skb->xmit_more
        r8152: return -EBUSY for runtime suspend
        ipv4: fix a potential use after free in fou.c
        ipv4: fix a potential use after free in ip_tunnel_core.c
        hyperv: Add handling of IP header with option field in netvsc_set_hash()
        openvswitch: Create right mask with disabled megaflows
        vxlan: fix a free after use
        openvswitch: fix a use after free
        ipv4: dst_entry leak in ip_send_unicast_reply()
        ipv4: clean up cookie_v4_check()
        ipv4: share tcp_v4_save_options() with cookie_v4_check()
        ipv4: call __ip_options_echo() in cookie_v4_check()
        atm: simplify lanai.c by using module_pci_driver
        ...
      2e923b02
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc · ffd8221b
      Linus Torvalds 提交于
      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
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide · e0a9272c
      Linus Torvalds 提交于
      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
    • C
      futex: Ensure get_futex_key_refs() always implies a barrier · 76835b0e
      Catalin Marinas 提交于
      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: NCatalin Marinas <catalin.marinas@arm.com>
      Reported-by: NMatteo Franchin <Matteo.Franchin@arm.com>
      Fixes: b0c29f79 (futexes: Avoid taking the hb->lock if there's nothing to wake up)
      Acked-by: NDavidlohr Bueso <dave@stgolabs.net>
      Tested-by: NMike 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: NLinus Torvalds <torvalds@linux-foundation.org>
      76835b0e
  2. 18 10月, 2014 19 次提交
  3. 17 10月, 2014 3 次提交
  4. 16 10月, 2014 13 次提交