Roland,

The enclosed patch series enhances the IBoE kernel stack to
use GID change event and network flow counters.

This work is based on earlier patches done by Eli Cohen <e...@mellanox.co.il>
posted during Nov/2010 see http://marc.info/?l=linux-rdma&m=128939180605962

The first change is used to avoid using the irrelevant LID change
event for updating the IB core GID cache, and is made of two patches:

[PATCH 1/9] ib/core: Add GID change event
[PATCH 2/9] ib/mlx4: use GID change event on IBoE code

The second change is used such that eventually we're able to
implement port level packets/bytes performance counters for
IBoE and is made of seven patches:

[PATCH 3/9] mlx4: extend cap flags to 64 bit
[PATCH 4/9] mlx4: align current extended capabilities to use the flags field
[PATCH 5/9] mlx4: Fix layout of QP context for correct location of counter index
[PATCH 6/9] mlx4: add network flow counters
[PATCH 7/9] ib/pma: add include file for IBA performance counters definitions
[PATCH 8/9] ib/mlx4: use flow counters on IBoE ports
[PATCH 9/9] ib/mlx4: support PMA counters for IBoE

patches #3 and #4 change the mlx4 driver such that it now uses
a 64 bit capability flags. This extended cap flags field is used
to account for currently implemented extended capabilities (e.g
udp_rss, uc/mc vep steering, etc) and for the flow counters capability.
These two patches are light in the sense that they don't add/remove
any functionality from the driver.

patch #5 is a bug fix for driver view of the mlx4 QP context
layout w.r.t to the counter index location.

patch #6 adds mlx4 support for network flow counters, where such counter
can be pointed by a set containing one or more QPs and track receive and
transmit packets and bytes of these QPs.

patch #7 moves the various definitions and mad structures related to IBA
PM agent from the ipath and qib drivers into a single include file, so we
can later use them for IBoE and avoid the current code duplication...

patches #8 and #9 bring the actual IBoE use of the counters,
done through allocating flow counter per Ethernet/IBoE port,
such that this counter is later pointed by all mlx4_ib QPs created
on that port. Later this counter can be queried so get a port level
packets/bytes performance counters ala IB

Or.


 drivers/infiniband/core/cache.c         |    3
 drivers/infiniband/hw/ipath/ipath_mad.c |  134 ------------------------
 drivers/infiniband/hw/mlx4/mad.c        |   68 ++++++++++++
 drivers/infiniband/hw/mlx4/main.c       |   22 +++-
 drivers/infiniband/hw/mlx4/mlx4_ib.h    |    1
 drivers/infiniband/hw/mlx4/qp.c         |   10 +
 drivers/infiniband/hw/qib/qib_mad.h     |  176 --------------------------------
 drivers/net/mlx4/en_ethtool.c           |    9 -
 drivers/net/mlx4/en_main.c              |    3
 drivers/net/mlx4/en_netdev.c            |    5
 drivers/net/mlx4/en_port.c              |    6 -
 drivers/net/mlx4/en_selftest.c          |    3
 drivers/net/mlx4/fw.c                   |   39 ++++---
 drivers/net/mlx4/fw.h                   |    8 -
 drivers/net/mlx4/main.c                 |   62 ++++++++++-
 drivers/net/mlx4/mcg.c                  |   17 +--
 drivers/net/mlx4/mlx4.h                 |    1
 drivers/net/mlx4/port.c                 |    8 -
 include/linux/mlx4/cmd.h                |    3
 include/linux/mlx4/device.h             |   60 ++++++----
 include/linux/mlx4/qp.h                 |    8 -
 include/rdma/ib_verbs.h                 |    3
 22 files changed, 262 insertions(+), 387 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to