1. 24 Apr, 2013 13 commits
    • Yuval Mintz's avatar
      bnx2x: Fix memory leak · 2f7a3122
      Yuval Mintz authored
      
      
      There exists an `allocation race' between the CNIC and bnx2x drivers,
      in which both drivers allocate the same t2 memory while disregarding a possible
      previous allocation.
      
      Additionally, due to the current order of memory releases, some of the
      ILT memory in the driver is not released correctly when unloading the driver.
      Signed-off-by: default avatarYuval Mintz <yuvalmin@broadcom.com>
      Signed-off-by: default avatarAriel Elior <ariele@broadcom.com>
      Signed-off-by: default avatarEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      2f7a3122
    • Dmitry Kravkov's avatar
      bnx2x: Enhance MAC configuration for VFs · f8f4f61a
      Dmitry Kravkov authored
      
      
      Improved support for adding/removing vf mac addresses.
      
      This includes the case where HyperVisor forced the address (sampled from
      bulletin board), and the case where it did not in which the VF can
      configure its own mac address.
      Signed-off-by: default avatarDmitry Kravkov <dmitry@broadcom.com>
      Signed-off-by: default avatarAriel Elior <ariele@broadcom.com>
      Signed-off-by: default avatarYuval Mintz <yuvalmin@broadcom.com>
      Signed-off-by: default avatarEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f8f4f61a
    • Yaniv Rosner's avatar
      bnx2x: Allow RX/TX pause control in autoneg · ba35a0fd
      Yaniv Rosner authored
      
      
      Currently, when link is configured to auto-negotiate the flow control,
      disabling RX/TX pause via ethtool doesn't work.
      
      This fixes the behaviour, advertising asymmetric pause in case either one
      is exclusively enabled.
      Signed-off-by: default avatarYaniv Rosner <yanivr@broadcom.com>
      Signed-off-by: default avatarYuval Mintz <yuvalmin@broadcom.com>
      Signed-off-by: default avatarEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ba35a0fd
    • Yuval Mintz's avatar
      bnx2x: prevent GRO false checksum claims · 2c2d06d5
      Yuval Mintz authored
      
      
      This patch introduces a more robust error handling flow in case of incorrect
      behaviour by the FW when passing on GRO aggregations.
      
      Although this should never happen (i.e., this is merely a theoretical fix),
      if the bnx2x driver was to receive a GRO from FW with protocol other than
      IPv4/IPv6, the driver would falsely claim to have performed partial
      checksum and set various incorrect fields in the skb header.
      
      Current behaviour of the bnx2x driver (i.e., print an error) is insufficient.
      This patch remedies this by simply preventing the false claims.
      Signed-off-by: default avatarYuval Mintz <yuvalmin@broadcom.com>
      Signed-off-by: default avatarAriel Elior <ariele@broadcom.com>
      Signed-off-by: default avatarEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      2c2d06d5
    • David S. Miller's avatar
      Merge branch 'mlx4' · 09960769
      David S. Miller authored
      Or Gerlitz says:
      
      ====================
      This series adds support for the SRIOV ndo_set_vf callbacks to the mlx4 driver.
      
      Series done against the net-next tree as of commit 0c501345
      
       "batman-adv: fix
      global protection fault during soft_iface destruction".
      
      We have successfully tested the series on net-next, except for getting
      the VF link info issue I have reported earlier today on netdev, we
      see the problem for both ixgbe and mlx4 VFs. Just to make sure get
      VF config is working OK with patch #6 - we have run it over 3.8.8 too.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      09960769
    • Amir Vadai's avatar
      net/mlx4_en: Add a service task · b6c39bfc
      Amir Vadai authored
      
      
      Add a service task to run tasks that needed to be executed periodically.
      Currently the only task is a watchdog to catch NIC clock overflow, to make
      timestamping accurate.
      Will move the statistics task into this framework in a later patch.
      Signed-off-by: default avatarAmir Vadai <amirv@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b6c39bfc
    • Amir Vadai's avatar
      net/mlx4_en: Support software timestamping · eb0cabbd
      Amir Vadai authored
      
      
      Kernel software timestamping requires that the driver calls skb_tx_timestamp
      just before passing the skb to the HW MAC layer. This patch adds this call.
      Signed-off-by: default avatarAmir Vadai <amirv@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      eb0cabbd
    • Amir Vadai's avatar
      net/mlx4_en: Add HW timestamping (TS) support · ec693d47
      Amir Vadai authored
      
      
      The patch allows to enable/disable HW timestamping for incoming and/or
      outgoing packets. It adds and initializes all structs and callbacks
      needed by kernel TS API.
      To enable/disable HW timestamping appropriate ioctl should be used.
      Currently HWTSTAMP_FILTER_ALL/NONE and HWTSAMP_TX_ON/OFF only are
      supported.
      When enabling TS on receive flow - VLAN stripping will be disabled.
      Also were made all relevant changes in RX/TX flows to consider TS request
      and plant HW timestamps into relevant structures.
      mlx4_ib was fixed to compile with new mlx4_cq_alloc() signature.
      Signed-off-by: default avatarEugenia Emantayev <eugenia@mellanox.com>
      Signed-off-by: default avatarAmir Vadai <amirv@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ec693d47
    • Eugenia Emantayev's avatar
      net/mlx4_core: Read HCA frequency and map internal clock · ddd8a6c1
      Eugenia Emantayev authored
      
      
      Read HCA frequency, read PCI clock bar and offset, map internal clock to
      PCI bar.
      Signed-off-by: default avatarEugenia Emantayev <eugenia@mellanox.com>
      Signed-off-by: default avatarAmir Vadai <amirv@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ddd8a6c1
    • Eugenia Emantayev's avatar
      net/mlx4_core: Add timestamping device capability · d998735f
      Eugenia Emantayev authored
      
      
      Add new device capability for timestamping support and query FW to retrieve it.
      Signed-off-by: default avatarEugenia Emantayev <eugenia@mellanox.com>
      Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarAmir Vadai <amirv@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d998735f
    • David S. Miller's avatar
      Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next · 8bfadc32
      David S. Miller authored
      
      
      John W. Linville says:
      
      ====================
      Here is one last(?) big wireless bits pull request before the merge window...
      
      Regarding the mac80211 bits, Johannes says:
      
      "Here's another big pull request for the -next stream. This one has a ton
      of driver updates, which hopefully addresses all drivers, but maybe you
      have more new drivers than I have in my tree? Not entirely sure, let me
      know if this is the case and then I can merge wireless-next.
      
      I'm including a large number of small changes, see the shortlog. The two
      bigger things are making VHT compatible with not using channel contexts
      (from Karl) and the stop-while-suspended fixes I developed together with
      Stanislaw."
      
      ...and...
      
      "This time I have a relatively large number of fixes and small
      improvements, the most important one being Bob's RCU fix. The two big
      things are Felix's work on rate scaling tables (with a big thanks to
      Karl too) and my own work on CSA handling to finally properly handle HT
      (and some VHT.)"
      
      As for the iwlwifi bits, Johannes says:
      
      "The biggest work here is Bluetooth coexistence and power saving. Other
      than that, I have a few small fixes that weren't really needed for 3.9
      and a new PCI ID."
      
      About the NFC bits, Samuel says:
      
      "With this one we have:
      
      - A major pn533 update. The pn533 framing support has been changed in order to
        easily support all pn533 derivatives. For example we now support the ACR122
        USB dongle.
      
      - An NFC MEI physical layer code factorization through the mei_phy NFC API.
        Both the microread and the pn544 drivers now use it.
      
      - LLCP aggregation support. This allows NFC p2p devices to send aggregated
        frames containing all sort of LLCP frames except SYMM and aggregation
        frames.
      
      - More LLCP socket options for getting the remote device link parameters.
      
      - Fixes for the LLCP socket option code added with the first pull request for
        3.10.
      
      - Some support for LLCP corner cases like 0 length SDUs and general DISC
        (tagged with a 0,0 dsap ssap couple) handling.
      
      - RFKILL support for NFC."
      
      For the b43 bits, Rafał says:
      
      "Let me remind the changes for b43:
      > Changes include:
      > 1) Minor improvements for HT-PHY code (BCM4331)
      > 2) Code cleaning for HT-PHY and N-PHY"
      
      Concerning the bluetooth bits, Gustavo says:
      
      "A set of changes intended for 3.10. The biggest changes here are from David
      Herrmann, he rewrote most of the HIDP layer making it more reliable. Marcel
      added a driver setup stage for device that need special handling on their
      early initialization. Other than that we have the usual clean ups, bugfixes
      and small improvements."
      
      Along with all that, there is the usual collection of random/various
      updates to ath9k, mwifiex, brcmfmac, brcmsmac, rt2x00, and wil6210.
      
      I also included a pull of the wireless tree to resolve a merge conflict.
      
      Please let me know if there are problems!
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      8bfadc32
    • Nicolas Dichtel's avatar
      netlink: fix compilation after memory mapped patches · 1bf9310a
      Nicolas Dichtel authored
      
      
      Depending of the kernel configuration (CONFIG_UIDGID_STRICT_TYPE_CHECKS), we can
      get the following errors:
      
      net/netlink/af_netlink.c: In function ‘netlink_queue_mmaped_skb’:
      net/netlink/af_netlink.c:663:14: error: incompatible types when assigning to type ‘__u32’ from type ‘kuid_t’
      net/netlink/af_netlink.c:664:14: error: incompatible types when assigning to type ‘__u32’ from type ‘kgid_t’
      net/netlink/af_netlink.c: In function ‘netlink_ring_set_copied’:
      net/netlink/af_netlink.c:693:14: error: incompatible types when assigning to type ‘__u32’ from type ‘kuid_t’
      net/netlink/af_netlink.c:694:14: error: incompatible types when assigning to type ‘__u32’ from type ‘kgid_t’
      
      We must use the helpers to get the uid and gid, and also take care of user_ns.
      
      Fix suggested by Eric W. Biederman <ebiederm@xmission.com>.
      Signed-off-by: default avatarNicolas Dichtel <nicolas.dichtel@6wind.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      1bf9310a
    • John W. Linville's avatar
      Merge branch 'master' of... · 6ed0e321
      John W. Linville authored
      Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem
      6ed0e321
  2. 23 Apr, 2013 27 commits