1. 11 Oct, 2015 5 commits
    • David S. Miller's avatar
      Merge branch 'for-upstream' of... · 7bcfeead
      David S. Miller authored
      Merge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next
      
      Johan Hedberg says:
      
      ====================
      pull request: bluetooth-next 2015-10-08
      
      Here's another set of Bluetooth & 802.15.4 patches for the 4.4 kernel.
      
      802.15.4:
       - Many improvements & fixes to the mrf24j40 driver
       - Fixes and cleanups to nl802154, mac802154 & ieee802154 code
      
      Bluetooth:
       - New chipset support in btmrvl driver
       - Fixes & cleanups to btbcm, btmrvl, bpa10x & btintel drivers
       - Support for vendor specific diagnostic data through common API
       - Cleanups to the 6lowpan code
       - New events & message types for monitor channel
      
      Please let me know if there are any issues pulling. Thanks.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      7bcfeead
    • wangweidong's avatar
      BNX2: fix a Null Pointer for stats_blk · 8fae307c
      wangweidong authored
      we have two processes to do:
      P1#: ifconfig eth0 down; which will call bnx2_close, then will
      , and set Null to stats_blk
      P2#: ifconfig eth0; which will call bnx2_get_stats64, it will
      use stats_blk.
      In one case:
          --P1#--                   --P2#--
                                    stats_blk(no null)
          bnx2_free_mem
          ->bp->stats_blk = NULL
                                    GET_64BIT_NET_STATS
      
      then it will cause 'NULL Pointer' Problem.
      it is as well with 'ethtool -S ethx'.
      
      Allocate the statistics block at probe time so that this problem is
      impossible
      Signed-off-by: default avatarWang Weidong <wangweidong1@huawei.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      8fae307c
    • Eric Dumazet's avatar
      net: synack packets can be attached to request sockets · e446f9df
      Eric Dumazet authored
      selinux needs few changes to accommodate fact that SYNACK messages
      can be attached to a request socket, lacking sk_security pointer
      
      (Only syncookies are still attached to a TCP_LISTEN socket)
      
      Adds a new sk_listener() helper, and use it in selinux and sch_fq
      
      Fixes: ca6fb065 ("tcp: attach SYNACK messages to request sockets instead of listener")
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Reported by: kernel test robot <ying.huang@linux.intel.com>
      Cc: Paul Moore <paul@paul-moore.com>
      Cc: Stephen Smalley <sds@tycho.nsa.gov>
      Cc: Eric Paris <eparis@parisplace.org>
      Acked-by: default avatarPaul Moore <paul@paul-moore.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      e446f9df
    • Hariprasad Shenai's avatar
      cxgb4: Enhance driver to update FW, when FW is too old · 21d11bd6
      Hariprasad Shenai authored
      t4_check_fw_version() can return several error codes (-EINVAL, -EBUSY,
      -EAGAIN). The present code sets the adapter state to UNINIT only if its
      an EFAULT. In all the error cases set the adapter to uninitialized state.
      
      In t4_check_fw_version() if call to t4_get_fw_version() fails, repeat the
      operation a few times before returning failure.
      Signed-off-by: default avatarHariprasad Shenai <hariprasad@chelsio.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      21d11bd6
    • Alexei Starovoitov's avatar
      bpf: fix cb access in socket filter programs · ff936a04
      Alexei Starovoitov authored
      eBPF socket filter programs may see junk in 'u32 cb[5]' area,
      since it could have been used by protocol layers earlier.
      
      For socket filter programs used in af_packet we need to clean
      20 bytes of skb->cb area if it could be used by the program.
      For programs attached to TCP/UDP sockets we need to save/restore
      these 20 bytes, since it's used by protocol layers.
      
      Remove SK_RUN_FILTER macro, since it's no longer used.
      
      Long term we may move this bpf cb area to per-cpu scratch, but that
      requires addition of new 'per-cpu load/store' instructions,
      so not suitable as a short term fix.
      
      Fixes: d691f9e8 ("bpf: allow programs to write to certain skb fields")
      Reported-by: default avatarEric Dumazet <edumazet@google.com>
      Signed-off-by: default avatarAlexei Starovoitov <ast@plumgrid.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ff936a04
  2. 09 Oct, 2015 24 commits
    • David S. Miller's avatar
      Merge branch 'net-non-modular' · d49ae37c
      David S. Miller authored
      Paul Gortmaker says:
      
      ====================
      make non-modular code explicitly non-modular
      
      [v2: drop m68k patches that Geert converted to modules; add one ARM
       driver patch ; update net-next baseline to today; switch to ARM
       for build testing.]
      
      In a previous merge window, we made changes to allow better
      delineation between modular and non-modular code in commit
      0fd972a7 ("module: relocate module_init
      from init.h to module.h").  This allows us to now ensure module code
      looks modular and non-modular code does not accidentally look modular
      just to avoid suffering build breakage.
      
      Here we target code that is, by nature of their Makefile and/or
      Kconfig settings, only available to be built-in, but implicitly
      presenting itself as being possibly modular by way of using modular
      headers, macros, and functions.
      
      The goal here is to remove that illusion of modularity from these
      files, but in a way that leaves the actual runtime unchanged.
      In doing so, we remove code that has never been tested and adds
      no value to the tree.  And we continue the process of expecting a
      level of consistency between the Kconfig/Makefile of code and the
      code in use itself.
      
      Fortuntately the net subsystem has relatively few instances, given
      the overall amount of code and drivers it contains.  For comparison
      there are over 300 instances tree wide, resulting in a possible net
      removal of on the order of 5000 lines of unused code.
      
      Build tested on net-next from today, on ARM, since that is the arch
      where the one ethernet driver changed here is available.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d49ae37c
    • Paul Gortmaker's avatar
      drivers/net/ethernet: make ti/cpsw-phy-sel.c explicitly non-modular · b3c8ec35
      Paul Gortmaker authored
      The Kconfig currently controlling compilation of this code is:
      
      drivers/net/ethernet/ti/Kconfig:config TI_CPSW_PHY_SEL
      drivers/net/ethernet/ti/Kconfig:        bool "TI CPSW Switch Phy sel Support"
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the couple traces of modularity so that when reading the
      driver there is no doubt it is builtin-only.
      
      Since module_platform_driver() uses the same init level priority as
      builtin_platform_driver() the init ordering remains unchanged with
      this commit.
      
      Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      was (or is now) contained at the top of the file in the comments.
      
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Varka Bhadram <varkabhadram@gmail.com>
      Cc: netdev@vger.kernel.org
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b3c8ec35
    • Paul Gortmaker's avatar
      net/sched: make sch_blackhole.c explicitly non-modular · 075640e3
      Paul Gortmaker authored
      The Kconfig currently controlling compilation of this code is:
      
      net/sched/Kconfig:menuconfig NET_SCHED
      net/sched/Kconfig:      bool "QoS and/or fair queueing"
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the modular code that is essentially orphaned, so that
      when reading the driver there is no doubt it is builtin-only.
      
      Since module_init translates to device_initcall in the non-modular
      case, the init ordering remains unchanged with this commit.  We can
      change to one of the other priority initcalls (subsys?) at any later
      date, if desired.
      
      We also delete the MODULE_LICENSE tag since all that information
      is already contained at the top of the file in the comments.
      
      Cc: Jamal Hadi Salim <jhs@mojatatu.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: netdev@vger.kernel.org
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      075640e3
    • Paul Gortmaker's avatar
      net/dcb: make dcbnl.c explicitly non-modular · 36b9ad80
      Paul Gortmaker authored
      The Kconfig currently controlling compilation of this code is:
      
      net/dcb/Kconfig:config DCB
      net/dcb/Kconfig:        bool "Data Center Bridging support"
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the modular code that is essentially orphaned, so that
      when reading the driver there is no doubt it is builtin-only.
      
      Since module_init translates to device_initcall in the non-modular
      case, the init ordering remains unchanged with this commit.  We can
      change to one of the other priority initcalls (subsys?) at any later
      date, if desired.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      is (or is now) already contained at the top of the file in the comments.
      
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Or Gerlitz <ogerlitz@mellanox.com>
      Cc: Anish Bhatt <anish@chelsio.com>
      Cc: John Fastabend <john.r.fastabend@intel.com>
      Cc: Shani Michaeli <shanim@mellanox.com>
      Cc: netdev@vger.kernel.org
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      36b9ad80
    • Paul Gortmaker's avatar
      net/core: make sock_diag.c explicitly non-modular · b6191aee
      Paul Gortmaker authored
      The Makefile currently controlling compilation of this code lists
      it under "obj-y" ...meaning that it currently is not being built as
      a module by anyone.
      
      Lets remove the modular code that is essentially orphaned, so that
      when reading the driver there is no doubt it is builtin-only.
      
      Since module_init translates to device_initcall in the non-modular
      case, the init ordering remains unchanged with this commit.  We can
      change to one of the other priority initcalls (subsys?) at any later
      date, if desired.
      
      We can't remove module.h since the file uses other module related
      stuff even though it is not modular itself.
      
      We move the information from the MODULE_LICENSE tag to the top of the
      file, since that information is not captured anywhere else.  The
      MODULE_ALIAS_NET_PF_PROTO becomes a no-op in the non modular case, so
      it is removed.
      
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Eric Dumazet <edumazet@google.com>
      Cc: Nicolas Dichtel <nicolas.dichtel@6wind.com>
      Cc: Daniel Borkmann <daniel@iogearbox.net>
      Cc: Alexei Starovoitov <ast@plumgrid.com>
      Cc: Craig Gallek <kraig@google.com>
      Cc: netdev@vger.kernel.org
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b6191aee
    • David S. Miller's avatar
      Merge branch 'net-bool' · 4d886d65
      David S. Miller authored
      Yaowei Bai says:
      
      ====================
      net: small improvement
      
      This patchset makes several functions in net return bool to improve
      readability and/or simplicity because these functions only use one
      or zero as their return value.
      
      No functional changes.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      4d886d65
    • Yaowei Bai's avatar
      net/core: lockdep_rtnl_is_held can be boolean · 0cbf3343
      Yaowei Bai authored
      This patch makes lockdep_rtnl_is_held return bool due to this
      particular function only using either one or zero as its return
      value.
      
      In another patch lockdep_is_held is also made return bool.
      
      No functional change.
      Signed-off-by: default avatarYaowei Bai <bywxiaobai@163.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      0cbf3343
    • Yaowei Bai's avatar
      net/inetdevice: bad_mask can be boolean · f06cc7b2
      Yaowei Bai authored
      This patch makes bad_mask return bool due to this particular function
      only using either one or zero as its return value.
      
      No functional change.
      Signed-off-by: default avatarYaowei Bai <bywxiaobai@163.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f06cc7b2
    • Yaowei Bai's avatar
      net/inetdevice: inet_ifa_match can be boolean · c3225164
      Yaowei Bai authored
      This patch makes inet_ifa_match return bool due to this
      particular function only using either one or zero as its return
      value.
      
      No functional change.
      Signed-off-by: default avatarYaowei Bai <bywxiaobai@163.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      c3225164
    • Yaowei Bai's avatar
      net/dccp: dccp_bad_service_code can be boolean · 45ae74f5
      Yaowei Bai authored
      This patch makes dccp_bad_service_code return bool due to these
      particular functions only using either one or zero as their return
      value.
      
      dccp_list_has_service is also been made return bool in this patchset.
      
      No functional change.
      Signed-off-by: default avatarYaowei Bai <bywxiaobai@163.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      45ae74f5
    • Yaowei Bai's avatar
      net/dccp: dccp_list_has_service can be boolean · 0c6119d9
      Yaowei Bai authored
      This patch makes dccp_list_has_service return bool due to this
      particular function only using either one or zero as its return
      value.
      
      No functional change.
      Signed-off-by: default avatarYaowei Bai <bywxiaobai@163.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      0c6119d9
    • Yaowei Bai's avatar
      net/can: can_dropped_invalid_skb can be boolean · d6fbaea5
      Yaowei Bai authored
      This patch makes can_dropped_invalid_skb return bool due to this
      particular function only using either one or zero as its return
      value.
      
      No functional change.
      Signed-off-by: default avatarYaowei Bai <bywxiaobai@163.com>
      Acked-by: default avatarMarc Kleine-Budde <mkl@pengutronix.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d6fbaea5
    • Yaowei Bai's avatar
      net/nfnetlink: lockdep_nfnl_is_held can be boolean · 875e0829
      Yaowei Bai authored
      This patch makes lockdep_nfnl_is_held return bool to improve
      readability due to this particular function only using either
      one or zero as its return value.
      
      No functional change.
      Signed-off-by: default avatarYaowei Bai <bywxiaobai@163.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      875e0829
    • Yaowei Bai's avatar
      net/ieee80211: ieee80211_is_* can be boolean · 35498edc
      Yaowei Bai authored
      This patch makes ieee80211_is_* return bool to improve
      readability due to these particular functions only using either
      one or zero as their return value.
      
      No functional change.
      Signed-off-by: default avatarYaowei Bai <bywxiaobai@163.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      35498edc
    • Yaowei Bai's avatar
      net/netlink: lockdep_genl_is_held can be boolean · 61d03535
      Yaowei Bai authored
      This patch makes lockdep_genl_is_held return bool to improve
      readability due to this particular function only using either
      one or zero as its return value.
      
      No functional change.
      Signed-off-by: default avatarYaowei Bai <bywxiaobai@163.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      61d03535
    • David S. Miller's avatar
      Merge branch 'mlx-next' · 8cec75bd
      David S. Miller authored
      Or Gerlitz says:
      
      ==============================
      Mellanox driver update for net-next
      
      Some small fixes and small enhancements from the team.
      
      Series applies over net-next commit acb4a6bf "tcp: ensure prior synack rtx behavior
      with small backlogs".
      ==============================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      8cec75bd
    • Saeed Mahameed's avatar
      net/mlx4_core: Fix resource tracker error flow in add_res_range · 95e19633
      Saeed Mahameed authored
      The 'for' loop when undoing rb-tree insertions and list-adds in the
      error flow in add_res_range had errors, fix them.
      Signed-off-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
      Signed-off-by: default avatarJack Morgenstein <jackm@dev.mellanox.co.il>
      Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      95e19633
    • Jack Morgenstein's avatar
      net/mlx4_core: Fix mailbox leak in error flow when performing update qp · a5b3c56e
      Jack Morgenstein authored
      The procedure mlx4_update_qp leaks mailboxes in its error-flow, fix that.
      Signed-off-by: default avatarJack Morgenstein <jackm@dev.mellanox.co.il>
      Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a5b3c56e
    • Ido Shamay's avatar
      net/mlx4_en: Add steering rules after RSS creation · ba4b87ae
      Ido Shamay authored
      Changed the receive control flow in a way that steering
      rules are added only when the RSS object is already in RTR/RTS mode.
      Some optimization features, which are enabled by the device firmware,
      require this condition in order to be effective.
      Signed-off-by: default avatarIdo Shamay <idos@mellanox.com>
      Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ba4b87ae
    • Eli Cohen's avatar
      net/mlx5_core: Use private health thread for each device · ac6ea6e8
      Eli Cohen authored
      Use a single threaded work queue for each device in the system instead of
      using one thread for any device. This is required so we can concurrently
      process system error handling for all the devices that need that.
      Signed-off-by: default avatarEli Cohen <eli@mellanox.com>
      Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ac6ea6e8
    • Eli Cohen's avatar
      net/mlx5_core: Use accessor functions to read from device memory · 0144a95e
      Eli Cohen authored
      Use ioread function to read health buffer data. In addition, print the
      firmware version as a string for readability and also use dev_err to have
      the device string to be printed.
      Signed-off-by: default avatarEli Cohen <eli@mellanox.com>
      Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      0144a95e
    • Eli Cohen's avatar
      net/mlx5_core: Prepare cmd interface to system errors handling · 020446e0
      Eli Cohen authored
      In preparation to handling system errors at the mlx5_core level, change the
      interface of cmd_work_handler to accept a 64 bit argument for the vector.
      
      This allows to encode a flag that signifies when the handler is called
      as a result of a driver logic that wishes to terminate commands that
      the hardware may not be able to terminate. Such command completions
      are detected at the handler and proper return status is encoded.
      
      To be able to terminate page handler commands, we make sure to set
      the corresponding bit in the bitmask.
      Signed-off-by: default avatarEli Cohen <eli@mellanox.com>
      Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      020446e0
    • Eli Cohen's avatar
      net/mlx5_core: Improve mlx5 messages · 5a788398
      Eli Cohen authored
      Improve the messages printed by the mlx5 macros to include the device
      string. In addition, prefix names used by the macros with two underscores
      to avoid possible name collisions.
      Signed-off-by: default avatarEli Cohen <eli@mellanox.com>
      Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      5a788398
    • David S. Miller's avatar
      Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue · 1c43f75a
      David S. Miller authored
      Jeff Kirsher says:
      
      ====================
      Intel Wired LAN Driver Updates 2015-10-08
      
      This series contains updates to i40e and i40evf only (again).
      
      Jesse fixes an issue where the driver was issuing a WARN_ON during ring
      size changes because the code was cloning the rx_ring struct but not
      zeroing out the pointers before allocating new memory, so simply zero
      out the pointers.  Also reduced the function call overhead by moving
      the interrupt enable function by moving it to the header file, which it
      in turn allows us to inline it.  Also does a thorough job of code
      cleanup to fix spaces after declarations, remove unnecessary braces
      and breaks, remove another __func__ use and general code tidiness.
      
      Mitch adds mover verbose error messages when the number of supported VFs
      is reported in driver init and it different from the number reported in
      config space.  Updated the VF driver to now detect a reset with the
      VF_ARQLEN register since the enable bit is cleared when the VF is reset
      and it stays cleared until the VF driver processes the reset and
      re-enables the admin queue which is more reliable than using the
      VFGEN_RSTAT as previously.
      
      Neerav adds parsing for CEE DCBx TLVs from the LLDP MIB since there is
      a need to get the CEE DesiredCfg Tx by firmware and DCB configuration
      Rx from peer for debug and other application purposes.
      
      Carolyn fixes a problem where the PF's Flow Director filter table would
      have an entry that the hardware was unable to add, when this occurs an
      invalid entry gets replayed and a valid one is lost.
      
      Matt fixes an issue where multiple link up messages can be logged
      resulting from admin queue link status timing when link properties are
      changed.
      
      Shannon adds the ability to control the period link polling through
      ethtool to be able to switch it off and on for debugging link issues.
      
      Serey explicitly assigns the enum index for each VSI type so that the PF
      and VF always reference to the same VSI type event if the enum lists
      are different.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      1c43f75a
  3. 08 Oct, 2015 11 commits