netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next 0/2] Add pgtable API to query if write combining is available
@ 2014-10-01 14:54 Or Gerlitz
  2014-10-01 14:54 ` [PATCH net-next 1/2] pgtable: Add " Or Gerlitz
  2014-10-01 14:54 ` [PATCH net-next 2/2] net/mlx4_core: Disable BF when write combining is not available Or Gerlitz
  0 siblings, 2 replies; 6+ messages in thread
From: Or Gerlitz @ 2014-10-01 14:54 UTC (permalink / raw)
  To: David S. Miller
  Cc: netdev, Amir Vadai, Jack Morgenstein, Moshe Lazer, Tal Alon,
	Yevgeny Petrilin, Or Gerlitz

Currently the kernel write-combining interface provides a best effort
mechanism in which the caller simply invokes pgprot_writecombine().

If write combining is available, the region is mapped for it, otherwise
the region is (silently) mapped as non-cached. In some cases, however, 
the calling driver must know if write combining is available, so a silent 
best effort mechanism is not sufficient. Add writecombine_available(), which 
returns 1 if the system supports write combining and 0 if it doesn't.

In mlx4 for better latency, we write send descriptors to a write-combining
(WC) mapped buffer instead of ringing a doorbell and having the HW fetch
the descriptor from system memory.

However, if write-combining is not supported on the host, then we
obtain better latency by using the doorbell-ring/HW fetch mechanism.

This series from Moshe and Jack adds the API and uses in in mlx4.

We are sending through netdev to get feedback from the networking 
community and extend the reviewer audience if required.

Or


Moshe Lazer (2):
  pgtable: Add API to query if write combining is available
  net/mlx4_core: Disable BF when write combining is not available

 arch/arm/include/asm/pgtable.h          |    6 ++++++
 arch/arm64/include/asm/pgtable.h        |    5 +++++
 arch/ia64/include/asm/pgtable.h         |    6 ++++++
 arch/powerpc/include/asm/pgtable.h      |    6 ++++++
 arch/x86/include/asm/pgtable_types.h    |    2 ++
 arch/x86/mm/pat.c                       |    9 +++++++++
 drivers/net/ethernet/mellanox/mlx4/fw.c |    2 +-
 include/asm-generic/pgtable.h           |    8 ++++++++
 8 files changed, 43 insertions(+), 1 deletions(-)

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

end of thread, other threads:[~2014-10-03 19:29 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-10-01 14:54 [PATCH net-next 0/2] Add pgtable API to query if write combining is available Or Gerlitz
2014-10-01 14:54 ` [PATCH net-next 1/2] pgtable: Add " Or Gerlitz
2014-10-03 19:31   ` David Miller
2014-10-01 14:54 ` [PATCH net-next 2/2] net/mlx4_core: Disable BF when write combining is not available Or Gerlitz
2014-10-01 16:52   ` Alexei Starovoitov
2014-10-02 14:37     ` Or Gerlitz

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).