1. 20 Mar, 2012 24 commits
  2. 18 Mar, 2012 3 commits
    • Linus Torvalds's avatar
      Linux 3.3 · c16fa4f2
      Linus Torvalds authored
      c16fa4f2
    • Jason Baron's avatar
      Don't limit non-nested epoll paths · 93dc6107
      Jason Baron authored
      Commit 28d82dc1 ("epoll: limit paths") that I did to limit the
      number of possible wakeup paths in epoll is causing a few applications
      to longer work (dovecot for one).
      
      The original patch is really about limiting the amount of epoll nesting
      (since epoll fds can be attached to other fds). Thus, we probably can
      allow an unlimited number of paths of depth 1. My current patch limits
      it at 1000. And enforce the limits on paths that have a greater depth.
      
      This is captured in: https://bugzilla.redhat.com/show_bug.cgi?id=681578Signed-off-by: default avatarJason Baron <jbaron@redhat.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      93dc6107
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · c579bc7e
      Linus Torvalds authored
      Pull networking changes from David Miller:
       "1) icmp6_dst_alloc() returns NULL instead of ERR_PTR() leading to
           crashes, particularly during shutdown.  Reported by Dave Jones and
           fixed by Eric Dumazet.
      
        2) hyperv and wimax/i2400m return NETDEV_TX_BUSY when they have
           already freed the SKB, which causes crashes as to the caller this
           means requeue the packet.  Fixes from Eric Dumazet.
      
        3) usbnet driver doesn't allocate the right amount of headroom on
           fresh RX SKBs, fix from Eric Dumazet.
      
        4) Fix regression in ip6_mc_find_dev_rcu(), as an RCU lookup it
           abolutely should not take a reference to 'dev', this leads to
           leaks.  Fix from RonQing Li.
      
        5) Fix netfilter ctnetlink race between delete and timeout expiration.
           From Pablo Neira Ayuso.
      
        6) Revert SFQ change which causes regressions, specifically queueing
           to tail can lead to unavoidable flow starvation.  From Eric
           Dumazet.
      
        7) Fix a memory leak and a crash on corrupt firmware files in bnx2x,
           from Michal Schmidt."
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
        netfilter: ctnetlink: fix race between delete and timeout expiration
        ipv6: Don't dev_hold(dev) in ip6_mc_find_dev_rcu.
        wimax/i2400m: fix erroneous NETDEV_TX_BUSY use
        net/hyperv: fix erroneous NETDEV_TX_BUSY use
        net/usbnet: reserve headroom on rx skbs
        bnx2x: fix memory leak in bnx2x_init_firmware()
        bnx2x: fix a crash on corrupt firmware file
        sch_sfq: revert dont put new flow at the end of flows
        ipv6: fix icmp6_dst_alloc()
      c579bc7e
  3. 17 Mar, 2012 10 commits
  4. 16 Mar, 2012 3 commits
    • Mark Salter's avatar
      C6X: remove dead code from entry.S · 6e780cf5
      Mark Salter authored
      The ENDPROC() on sys_fadvise64_c6x() in arch/c6x/kernel/entry.S is
      outside of the conditional block with the matching ENTRY() macro. This
      leads a newer (v2.22 vs. v2.20) assembler to complain:
      
        /tmp/ccGZBaPT.s: Assembler messages:
        /tmp/ccGZBaPT.s: Error: .size expression for sys_fadvise64_c6x does not evaluate to a constant
      
      The conditional block became dead code when c6x switched to generic
      unistd.h and should be removed along with the offending ENDPROC().
      Signed-off-by: default avatarMark Salter <msalter@redhat.com>
      Acked-by: default avatarDavid Howells <dhowells@redhat.com>
      6e780cf5
    • Eric Dumazet's avatar
      wimax/i2400m: fix erroneous NETDEV_TX_BUSY use · b8fbaef5
      Eric Dumazet authored
      A driver start_xmit() method cannot free skb and return NETDEV_TX_BUSY,
      since caller is going to reuse freed skb.
      
      In fact netif_tx_stop_queue() / netif_stop_queue() is needed before
      returning NETDEV_TX_BUSY or you can trigger a ksoftirqd fatal loop.
      
      In case of memory allocation error, only safe way is to drop the packet
      and return NETDEV_TX_OK
      
      Also increments tx_dropped counter
      Signed-off-by: default avatarEric Dumazet <eric.dumazet@gmail.com>
      Cc: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b8fbaef5
    • Eric Dumazet's avatar
      net/hyperv: fix erroneous NETDEV_TX_BUSY use · bb6d5e76
      Eric Dumazet authored
      A driver start_xmit() method cannot free skb and return NETDEV_TX_BUSY,
      since caller is going to reuse freed skb.
      
      This is mostly a revert of commit bf769375 (staging: hv: fix the return
      status of netvsc_start_xmit())
      
      In fact netif_tx_stop_queue() / netif_stop_queue() is needed before
      returning NETDEV_TX_BUSY or you can trigger a ksoftirqd fatal loop.
      
      In case of memory allocation error, only safe way is to drop the packet
      and return NETDEV_TX_OK
      Signed-off-by: default avatarEric Dumazet <eric.dumazet@gmail.com>
      Cc: "K. Y. Srinivasan" <kys@microsoft.com>
      Cc: Haiyang Zhang <haiyangz@microsoft.com>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Reviewed-by: default avatarHaiyang Zhang <haiyangz@microsoft.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      bb6d5e76