1. 25 4月, 2013 14 次提交
    • D
      Merge branch 'bnx2x' · 01f27fc0
      David S. Miller 提交于
      Yuval Mintz says:
      
      ====================
      This patch series contains several enhancements, as well as small fixes:
      
        - Patch [1/5] - Prevent a theoretical problem in our GRO implementation.
      
        - Patch [2/5] - Support Rx/Tx pause control configuration in autoneg.
      
        - Patch [3/5] - Enhance support for VF's MAC setting and removal.
      
        - Patch [4/5] - Fix a small memory leak between bnx2x and cnic.
      
        - Patch [5/5] - Allow bnx2x to recover after a second slot reset.
      
      Please consider applying these patches to `net-next'.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      01f27fc0
    • Y
      bnx2x: Allow recovery from second slot reset · 70632d0a
      Yuval Mintz 提交于
      As part of PCIe Advanced Error Reporting flow, if a fatal PCI error occurs,
      the AER driver will cause bnx2x's PCI-core to reset. The driver's PCI error
      handlers will in turn restore the PCI configuration space values by calling
      `pci_restore_state'.
      
      However, as bnx2x does not save the PCI configuration after restoration,
      An additional fatal PCI error will leave the function in an unstable state
      until reboot, as the registers in the PCI configuration space will contain
      reset values.
      Signed-off-by: NYuval Mintz <yuvalmin@broadcom.com>
      Signed-off-by: NAriel Elior <ariele@broadcom.com>
      Signed-off-by: NEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      70632d0a
    • Y
      bnx2x: Fix memory leak · 2f7a3122
      Yuval Mintz 提交于
      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: NYuval Mintz <yuvalmin@broadcom.com>
      Signed-off-by: NAriel Elior <ariele@broadcom.com>
      Signed-off-by: NEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2f7a3122
    • D
      bnx2x: Enhance MAC configuration for VFs · f8f4f61a
      Dmitry Kravkov 提交于
      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: NDmitry Kravkov <dmitry@broadcom.com>
      Signed-off-by: NAriel Elior <ariele@broadcom.com>
      Signed-off-by: NYuval Mintz <yuvalmin@broadcom.com>
      Signed-off-by: NEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f8f4f61a
    • Y
      bnx2x: Allow RX/TX pause control in autoneg · ba35a0fd
      Yaniv Rosner 提交于
      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: NYaniv Rosner <yanivr@broadcom.com>
      Signed-off-by: NYuval Mintz <yuvalmin@broadcom.com>
      Signed-off-by: NEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ba35a0fd
    • Y
      bnx2x: prevent GRO false checksum claims · 2c2d06d5
      Yuval Mintz 提交于
      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: NYuval Mintz <yuvalmin@broadcom.com>
      Signed-off-by: NAriel Elior <ariele@broadcom.com>
      Signed-off-by: NEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2c2d06d5
    • D
      Merge branch 'mlx4' · 09960769
      David S. Miller 提交于
      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: NDavid S. Miller <davem@davemloft.net>
      09960769
    • A
      net/mlx4_en: Add a service task · b6c39bfc
      Amir Vadai 提交于
      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: NAmir Vadai <amirv@mellanox.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      b6c39bfc
    • A
      net/mlx4_en: Support software timestamping · eb0cabbd
      Amir Vadai 提交于
      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: NAmir Vadai <amirv@mellanox.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      eb0cabbd
    • A
      net/mlx4_en: Add HW timestamping (TS) support · ec693d47
      Amir Vadai 提交于
      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: NEugenia Emantayev <eugenia@mellanox.com>
      Signed-off-by: NAmir Vadai <amirv@mellanox.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ec693d47
    • E
      net/mlx4_core: Read HCA frequency and map internal clock · ddd8a6c1
      Eugenia Emantayev 提交于
      Read HCA frequency, read PCI clock bar and offset, map internal clock to
      PCI bar.
      Signed-off-by: NEugenia Emantayev <eugenia@mellanox.com>
      Signed-off-by: NAmir Vadai <amirv@mellanox.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ddd8a6c1
    • E
      net/mlx4_core: Add timestamping device capability · d998735f
      Eugenia Emantayev 提交于
      Add new device capability for timestamping support and query FW to retrieve it.
      Signed-off-by: NEugenia Emantayev <eugenia@mellanox.com>
      Signed-off-by: NOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: NAmir Vadai <amirv@mellanox.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d998735f
    • D
      Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next · 8bfadc32
      David S. Miller 提交于
      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: NDavid S. Miller <davem@davemloft.net>
      8bfadc32
    • N
      netlink: fix compilation after memory mapped patches · 1bf9310a
      Nicolas Dichtel 提交于
      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: NNicolas Dichtel <nicolas.dichtel@6wind.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      1bf9310a
  2. 24 4月, 2013 24 次提交
  3. 23 4月, 2013 2 次提交