netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next 0/3] mlx4: CQE/EQE stride support
@ 2014-09-18  8:50 Or Gerlitz
  2014-09-18  8:50 ` [PATCH net-next 1/3] net/mlx4_core: Enable " Or Gerlitz
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Or Gerlitz @ 2014-09-18  8:50 UTC (permalink / raw)
  To: David S. Miller; +Cc: netdev, Amir Vadai, Ido Shamay, Or Gerlitz

This series from Ido Shamay is intended for archs having 
cache line larger then 64 bytes.

Since our CQE/EQEs are generally 64B in those systems, HW will write
twice to the same cache line consecutively, causing pipe locks due to
he hazard prevention mechanism. For elements in a cyclic buffer, writes
are consecutive, so entries smaller than a cache line should be
avoided, especially if they are written at a high rate.

Reduce consecutive writes to same cache line in CQs/EQs, by allowing the
driver to increase the distance between entries so that each will reside
in a different cache line.

Or.

Ido Shamay (3):
  net/mlx4_core: Enable CQE/EQE stride support
  net/mlx4_core: Cache line EQE size support
  net/mlx4_en: Add mlx4_en_get_cqe helper

 drivers/net/ethernet/mellanox/mlx4/en_netdev.c |    1 +
 drivers/net/ethernet/mellanox/mlx4/en_rx.c     |    4 +-
 drivers/net/ethernet/mellanox/mlx4/en_tx.c     |    4 +-
 drivers/net/ethernet/mellanox/mlx4/eq.c        |   30 +++++++----
 drivers/net/ethernet/mellanox/mlx4/fw.c        |   38 ++++++++++++++-
 drivers/net/ethernet/mellanox/mlx4/fw.h        |    2 +
 drivers/net/ethernet/mellanox/mlx4/main.c      |   61 +++++++++++++++++++++++-
 drivers/net/ethernet/mellanox/mlx4/mlx4.h      |    3 +
 drivers/net/ethernet/mellanox/mlx4/mlx4_en.h   |    6 ++
 include/linux/mlx4/device.h                    |   11 +++-
 10 files changed, 138 insertions(+), 22 deletions(-)

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2014-09-19 21:32 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-09-18  8:50 [PATCH net-next 0/3] mlx4: CQE/EQE stride support Or Gerlitz
2014-09-18  8:50 ` [PATCH net-next 1/3] net/mlx4_core: Enable " Or Gerlitz
2014-09-18  8:51 ` [PATCH net-next 2/3] net/mlx4_core: Cache line EQE size support Or Gerlitz
2014-09-18  8:51 ` [PATCH net-next 3/3] net/mlx4_en: Add mlx4_en_get_cqe helper Or Gerlitz
2014-09-19 21:32 ` [PATCH net-next 0/3] mlx4: CQE/EQE stride support David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).