From 8fcaa7d5000c8e3b2b7db235d2c279ccb98a6dec Mon Sep 17 00:00:00 2001
From: Olaf Kirch <[EMAIL PROTECTED]>
Date: Thu, 24 Apr 2008 00:27:35 -0700
Subject: [PATCH] RDS: reduce struct rds_ib_send_work size

Currently, struct rds_ib_send_work contains an array of 29 ib_sge's,
making the total size of each entry around 512 bytes. This severely
limits the maximum size of the send WQ, as we allocate the
array of work entries via one kmalloc() call.

Another problem with this approach is that SENDs never use more than
2 SGEs anyway, so that fully utilize the SGE array for RDMA ops only,
anyway.

Change this to 8 SGEs, which seems to be a better balance.

An alternative (but much more intrusive) patch would have been to
replace the s_sge array with a pointer, and allocate the sge array
dynamically. For OFED 1.3.1 I chose the more conservative approach.

Signed-off-by: Olaf Kirch <[EMAIL PROTECTED]>
---
 net/rds/ib.h |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/net/rds/ib.h b/net/rds/ib.h
index eda4a68..fd0b2d8 100644
--- a/net/rds/ib.h
+++ b/net/rds/ib.h
@@ -10,7 +10,7 @@
 #define RDS_FMR_SIZE                   256
 #define RDS_FMR_POOL_SIZE              2048
 
-#define RDS_IB_MAX_SGE                 29
+#define RDS_IB_MAX_SGE                 8
 #define RDS_IB_RECV_SGE                2
 
 /*
-- 
1.5.4.rc3


-- 
Olaf Kirch  |  --- o --- Nous sommes du soleil we love when we play
[EMAIL PROTECTED] |    / | \   sol.dhoop.naytheet.ah kin.ir.samse.qurax
_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to