1. 30 Apr, 2015 8 commits
  2. 28 Apr, 2015 16 commits
  3. 27 Apr, 2015 16 commits
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 2decb268
      Linus Torvalds authored
      Pull networking fixes from David Miller:
      
       1) mlx4 doesn't check fully for supported valid RSS hash function, fix
          from Amir Vadai
      
       2) Off by one in ibmveth_change_mtu(), from David Gibson
      
       3) Prevent altera chip from reporting false error interrupts in some
          circumstances, from Chee Nouk Phoon
      
       4) Get rid of that stupid endless loop trying to allocate a FIN packet
          in TCP, and in the process kill deadlocks.  From Eric Dumazet
      
       5) Fix get_rps_cpus() crash due to wrong invalid-cpu value, also from
          Eric Dumazet
      
       6) Fix two bugs in async rhashtable resizing, from Thomas Graf
      
       7) Fix topology server listener socket namespace bug in TIPC, from Ying
          Xue
      
       8) Add some missing HAS_DMA kconfig dependencies, from Geert
          Uytterhoeven
      
       9) bgmac driver intends to force re-polling but does so by returning
          the wrong value from it's ->poll() handler.  Fix from Rafał Miłecki
      
      10) When the creater of an rhashtable configures a max size for it,
          don't bark in the logs and drop insertions when that is exceeded.
          Fix from Johannes Berg
      
      11) Recover from out of order packets in ppp mppe properly, from Sylvain
          Rochet
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (41 commits)
        bnx2x: really disable TPA if 'disable_tpa' option is set
        net:treewide: Fix typo in drivers/net
        net/mlx4_en: Prevent setting invalid RSS hash function
        mdio-mux-gpio: use new gpiod_get_array and gpiod_put_array functions
        netfilter; Add some missing default cases to switch statements in nft_reject.
        ppp: mppe: discard late packet in stateless mode
        ppp: mppe: sanity error path rework
        net/bonding: Make DRV macros private
        net: rfs: fix crash in get_rps_cpus()
        altera tse: add support for fixed-links.
        pxa168: fix double deallocation of managed resources
        net: fix crash in build_skb()
        net: eth: altera: Resolve false errors from MSGDMA to TSE
        ehea: Fix memory hook reference counting crashes
        net/tg3: Release IRQs on permanent error
        net: mdio-gpio: support access that may sleep
        inet: fix possible panic in reqsk_queue_unlink()
        rhashtable: don't attempt to grow when at max_size
        bgmac: fix requests for extra polling calls from NAPI
        tcp: avoid looping in tcp_send_fin()
        ...
      2decb268
    • Michal Schmidt's avatar
      bnx2x: really disable TPA if 'disable_tpa' option is set · 22a8f237
      Michal Schmidt authored
      bnx2x's 'disable_tpa=1' module option is not respected properly and TPA
      (transparent packet aggregation) remains enabled. Even though the
      module option causes LRO to be disabled, TPA is enabled in GRO mode.
      
      Additionally, disabling GRO via ethtool then has no effect. One can
      still observe tpa_* statistics increase and large packets being received
      in tcpdump.
      
      The bug was an unintended consequence of commit aebf6244 "bnx2x: Be
      more forgiving toward SW GRO".
      
      Fix it by following the bp->disable_tpa flag when initializing fp's.
      Signed-off-by: default avatarMichal Schmidt <mschmidt@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      22a8f237
    • Masanari Iida's avatar
      net:treewide: Fix typo in drivers/net · 94435f76
      Masanari Iida authored
      This patch fix spelling typo in printk.
      Signed-off-by: default avatarMasanari Iida <standby24x7@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      94435f76
    • Amir Vadai's avatar
      net/mlx4_en: Prevent setting invalid RSS hash function · b3706909
      Amir Vadai authored
      mlx4_en_check_rxfh_func() was checking for hardware support before
      setting a known RSS hash function, but didn't do any check before
      setting unknown RSS hash function. Need to make it fail on such values.
      In this occasion, moved the actual setting of the new value from the
      check function into mlx4_en_set_rxfh().
      
      Fixes: 947cbb0a ("net/mlx4_en: Support for configurable RSS hash function")
      Signed-off-by: default avatarAmir Vadai <amirv@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b3706909
    • Rojhalat Ibrahim's avatar
      mdio-mux-gpio: use new gpiod_get_array and gpiod_put_array functions · 33df10e2
      Rojhalat Ibrahim authored
      Use the new gpiod_get_array and gpiod_put_array functions
      (added to mainline in the v4.1 merge window) for obtaining and
      disposing of GPIO descriptors.
      
      Cc: David Miller <davem@davemloft.net>
      Cc: Linus Walleij <linus.walleij@linaro.org>
      Signed-off-by: default avatarRojhalat Ibrahim <imr@rtschenk.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      33df10e2
    • David S. Miller's avatar
      netfilter; Add some missing default cases to switch statements in nft_reject. · 129d23a5
      David S. Miller authored
      This fixes:
      
      ====================
      net/netfilter/nft_reject.c: In function ‘nft_reject_dump’:
      net/netfilter/nft_reject.c:61:2: warning: enumeration value ‘NFT_REJECT_TCP_RST’ not handled in switch [-Wswitch]
        switch (priv->type) {
        ^
      net/netfilter/nft_reject.c:61:2: warning: enumeration value ‘NFT_REJECT_ICMPX_UNREACH’ not handled in switch [-Wswi\
      tch]
      net/netfilter/nft_reject_inet.c: In function ‘nft_reject_inet_dump’:
      net/netfilter/nft_reject_inet.c:105:2: warning: enumeration value ‘NFT_REJECT_TCP_RST’ not handled in switch [-Wswi\
      tch]
        switch (priv->type) {
        ^
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      129d23a5
    • Paolo Bonzini's avatar
      x86: pvclock: Really remove the sched notifier for cross-cpu migrations · 73459e2a
      Paolo Bonzini authored
      This reverts commits 0a4e6be9
      and 80f7fdb1.
      
      The task migration notifier was originally introduced in order to support
      the pvclock vsyscall with non-synchronized TSC, but KVM only supports it
      with synchronized TSC.  Hence, on KVM the race condition is only needed
      due to a bad implementation on the host side, and even then it's so rare
      that it's mostly theoretical.
      
      As far as KVM is concerned it's possible to fix the host, avoiding the
      additional complexity in the vDSO and the (re)introduction of the task
      migration notifier.
      
      Xen, on the other hand, hasn't yet implemented vsyscall support at
      all, so we do not care about its plans for non-synchronized TSC.
      Reported-by: default avatarPeter Zijlstra <peterz@infradead.org>
      Suggested-by: default avatarMarcelo Tosatti <mtosatti@redhat.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      73459e2a
    • Radim Krčmář's avatar
      kvm: x86: fix kvmclock update protocol · 5dca0d91
      Radim Krčmář authored
      The kvmclock spec says that the host will increment a version field to
      an odd number, then update stuff, then increment it to an even number.
      The host is buggy and doesn't do this, and the result is observable
      when one vcpu reads another vcpu's kvmclock data.
      
      There's no good way for a guest kernel to keep its vdso from reading
      a different vcpu's kvmclock data, but we don't need to care about
      changing VCPUs as long as we read a consistent data from kvmclock.
      (VCPU can change outside of this loop too, so it doesn't matter if we
      return a value not fit for this VCPU.)
      
      Based on a patch by Radim Krčmář.
      Reviewed-by: default avatarRadim Krčmář <rkrcmar@redhat.com>
      Acked-by: default avatarMarcelo Tosatti <mtosatti@redhat.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      5dca0d91
    • Geert Uytterhoeven's avatar
    • Geert Uytterhoeven's avatar
      drivers: sh: Disable PM runtime for multi-platform r8a73a4 with genpd · 230f259f
      Geert Uytterhoeven authored
      If the default PM domain using PM_CLK is used for PM runtime, the real PM
      domain(s) cannot be registered from DT later.
      
      Hence do not enable it when running a multi-platform kernel with genpd
      support on an r8a73a4. The R-Mobile PM domain driver will take care of
      PM runtime management of the module clocks.
      
      The default PM domain is still needed for:
        - platforms without genpd support,
        - the legacy (non-DT) case, where genpd may take over later, except
          for the C5 "always on" PM domain.
      Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
      Signed-off-by: default avatarSimon Horman <horms+renesas@verge.net.au>
      230f259f
    • Geert Uytterhoeven's avatar
      drivers: sh: Disable PM runtime for multi-platform sh73a0 with genpd · 41b4b3bc
      Geert Uytterhoeven authored
      If the default PM domain using PM_CLK is used for PM runtime, the real PM
      domain(s) cannot be registered from DT later.
      
      Hence do not enable it when running a multi-platform kernel with genpd
      support on an sh73a0. The R-Mobile PM domain driver will take care of
      PM runtime management of the module clocks.
      
      The default PM domain is still needed for:
        - platforms without genpd support,
        - the legacy (non-DT) case, where genpd may take over later, except
          for the C5 "always on" PM domain.
      Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
      Signed-off-by: default avatarSimon Horman <horms+renesas@verge.net.au>
      41b4b3bc
    • David S. Miller's avatar
      Merge branch 'ppp_mppe_desync' · 8e9b29cc
      David S. Miller authored
      Sylvain Rochet says:
      
      ====================
      ppp: mppe: fixes MPPE desync on links which don't guarantee packet ordering
      
      I am currently having an issue with PPP over L2TP (UDP) and MPPE in
      stateless mode (default mode), UDP does not guarantee packet ordering so
      we might get out of order packet. MPPE needs to be continuously synched
      so we should drop late UDP packet.
      
      I added a printk on the number of time we rekeyed in MPPE decompressor,
      this is what we currently have if we receive a slightly out of order UDP
      packet:
      
      [1731001.049206] mppe_decompress[1]: ccount 1559
      [1731001.049216] mppe_decompress[1]: rekeyed 1 times
      
      [1731001.049228] mppe_decompress[1]: ccount 1560
      [1731001.049232] mppe_decompress[1]: rekeyed 1 times
      
      [1731001.050170] mppe_decompress[1]: ccount 1562
      [1731001.050182] mppe_decompress[1]: rekeyed 2 times
      
      [1731001.050191] mppe_decompress[1]: ccount 1561
      [1731001.062576] mppe_decompress[1]: rekeyed 4095 times
                                                   ^^^^
      This is obviously wrong, we missed packet 1561 and we already rekeyed 2
      times for 1562 we previously received, we can't recover the decryption
      key we need for 1561, we should drop it instead of rekeying 4095 times.
      
      This patch series drop any packet with are not within the 4096/2 forward
      window.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      8e9b29cc
    • Sylvain Rochet's avatar
      ppp: mppe: discard late packet in stateless mode · 03654763
      Sylvain Rochet authored
      When PPP is used over a link which does not guarantee packet ordering,
      we might get late MPPE packets. This is a problem because MPPE must be
      kept synchronized and the current implementation does not drop them and
      rekey 4095 times instead of 0, which is wrong.
      
      In order to prevent rekeying about a whole count space times (~ 4095
      times), drop packets which are not within the forward 4096/2 window and
      increase sanity error counter.
      Signed-off-by: default avatarSylvain Rochet <sylvain.rochet@finsecur.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      03654763
    • Sylvain Rochet's avatar
      ppp: mppe: sanity error path rework · 32530189
      Sylvain Rochet authored
      We are going to need sanity error path a little further, rework to be
      able to use the sanity error path anywhere in decompressor.
      Signed-off-by: default avatarSylvain Rochet <sylvain.rochet@finsecur.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      32530189
    • Matan Barak's avatar
      net/bonding: Make DRV macros private · 73b5a6f2
      Matan Barak authored
      The bonding modules currently defines four macros with
      general names that pollute the global namespace:
      DRV_VERSION
      DRV_RELDATE
      DRV_NAME
      DRV_DESCRIPTION
      
      Fixing that by defining a private bonding_priv.h
      header files which includes those defines.
      Signed-off-by: default avatarMatan Barak <matanb@mellanox.com>
      Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      73b5a6f2
    • Linus Torvalds's avatar
      Linux 4.1-rc1 · b787f68c
      Linus Torvalds authored
      b787f68c