[ofa-general] [PATCH 16/16] ib/ipoib: Set default CQ moderation parameters
Eli Cohen
eli at mellanox.co.il
Wed Jan 16 08:38:37 PST 2008
Set default CQ moderation parameters
Set the default params to make sure they are applied. This params
give better performance.
Signed-off-by: Eli Cohen <eli at mellanox.co.il>
---
drivers/infiniband/ulp/ipoib/ipoib_verbs.c | 12 ++++++++++++
1 files changed, 12 insertions(+), 0 deletions(-)
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_verbs.c b/drivers/infiniband/ulp/ipoib/ipoib_verbs.c
index f2289c6..f7defe9 100644
--- a/drivers/infiniband/ulp/ipoib/ipoib_verbs.c
+++ b/drivers/infiniband/ulp/ipoib/ipoib_verbs.c
@@ -34,6 +34,7 @@
*/
#include "ipoib.h"
+#include <linux/ethtool.h>
int ipoib_mcast_attach(struct net_device *dev, u16 mlid, union ib_gid *mgid)
{
@@ -158,6 +159,7 @@ int ipoib_transport_dev_init(struct net_device *dev, struct ib_device *ca)
};
int i, ret, size;
+ struct ethtool_coalesce *coal;
priv->pd = ib_alloc_pd(priv->ca);
if (IS_ERR(priv->pd)) {
@@ -182,6 +184,16 @@ int ipoib_transport_dev_init(struct net_device *dev, struct ib_device *ca)
goto out_free_mr;
}
+ coal = kzalloc(sizeof *coal, GFP_KERNEL);
+ if (coal) {
+ coal->rx_coalesce_usecs = 10;
+ coal->tx_coalesce_usecs = 10;
+ coal->rx_max_coalesced_frames = 16;
+ coal->tx_max_coalesced_frames = 16;
+ dev->ethtool_ops->set_coalesce(dev, coal);
+ kfree(coal);
+ }
+
if (ib_req_notify_cq(priv->cq, IB_CQ_NEXT_COMP))
goto out_free_cq;
--
1.5.3.8
More information about the general
mailing list