Re: [PATCH net-next] bnxt: add dma mapping attributes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 5/9/2017 2:05 PM, Michael Chan wrote:
On Tue, May 9, 2017 at 1:37 PM, Shannon Nelson
<shannon.nelson@xxxxxxxxxx> wrote:
On the SPARC platform we need to use the DMA_ATTR_WEAK_ORDERING attribute
in our Rx path dma mapping in order to get the expected performance out
of the receive path.  Adding it to the Tx path has little effect, so
that's not a part of this patch.

Signed-off-by: Shannon Nelson <shannon.nelson@xxxxxxxxxx>
Reviewed-by: Tushar Dave <tushar.n.dave@xxxxxxxxxx>
Reviewed-by: Tom Saeger <tom.saeger@xxxxxxxxxx>
---
 drivers/net/ethernet/broadcom/bnxt/bnxt.c |   61 ++++++++++++++++++----------
 1 files changed, 39 insertions(+), 22 deletions(-)

diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index 1f1e54b..771742c 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
@@ -66,6 +66,12 @@
 MODULE_DESCRIPTION("Broadcom BCM573xx network driver");
 MODULE_VERSION(DRV_MODULE_VERSION);

+#ifdef CONFIG_SPARC
+#define BNXT_DMA_ATTRS  DMA_ATTR_WEAK_ORDERING
+#else
+#define BNXT_DMA_ATTRS 0
+#endif
+

I think we can use the same attribute for all architectures.
Architectures that don't implement weak ordering will ignore the
attribute.


In the long run, you are probably correct, and it would be simple enough to change this. However, given the recent threads about the applicability of Relaxed Ordering and a couple of PCIe root complexes that have been found to have issues with Relaxed Ordering TLPs, I prefer to stay on the conservative side and set it up only for the platform I know. As it stands, this patch won't change the currently working behavior on other platforms, but will help us out on the one we know can use the feature.

sln


--
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Kernel Development]     [DCCP]     [Linux ARM Development]     [Linux]     [Photo]     [Yosemite Help]     [Linux ARM Kernel]     [Linux SCSI]     [Linux x86_64]     [Linux Hams]

  Powered by Linux