[PATCH] ibmveth change buffer pools dynamically
authorSantiago Leon <santil@us.ibm.com>
Tue, 25 Apr 2006 16:19:59 +0000 (11:19 -0500)
committerJeff Garzik <jeff@garzik.org>
Wed, 24 May 2006 05:30:37 +0000 (01:30 -0400)
commit860f242eb5340d0b0cfe243cb86b2a98f92e8b91
tree286d64b4acfc392bcb926a6f5f7bfb311b0d3efc
parent7b32a312895c00ff03178e49db8b651ee1e48178
[PATCH] ibmveth change buffer pools dynamically

This patch provides a sysfs interface to change some properties of the
ibmveth buffer pools (size of the buffers, number of buffers per pool,
and whether a pool is active).  Ethernet drivers use ethtool to provide
this type of functionality.  However, the buffers in the ibmveth driver
can have an arbitrary size (not only regular, mini, and jumbo which are
the only sizes that ethtool can change), and also ibmveth can have an
arbitrary number of buffer pools

Under heavy load we have seen dropped packets which obviously kills TCP
performance.  We have created several fixes that mitigate this issue,
but we definitely need a way of changing the number of buffers for an
adapter dynamically.  Also, changing the size of the buffers allows
users to change the MTU to something big (bigger than a jumbo frame)
greatly improving performance on partition to partition transfers.

The patch creates directories pool1...pool4 in the device directory in
sysfs, each with files: num, size, and active (which default to the
values in the mainline version).

Comments and suggestions are welcome...
--
Santiago A. Leon
Power Linux Development
IBM Linux Technology Center

Signed-off-by: Jeff Garzik <jeff@garzik.org>
drivers/net/ibmveth.c
drivers/net/ibmveth.h