netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next v4 0/3] enic: Add support for rx_copybreak
@ 2014-09-02 21:47 Govindarajulu Varadarajan
  2014-09-02 21:47 ` [PATCH net-next v4 1/3] enic: implement rx_copybreak Govindarajulu Varadarajan
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Govindarajulu Varadarajan @ 2014-09-02 21:47 UTC (permalink / raw)
  To: davem, netdev; +Cc: ssujith, ben, Govindarajulu Varadarajan

The following series implements rx_copybreak.

dma_map_single()/dma_unmap_single() is more expensive than alloc_skb & memcpy
for smaller packets. By doing this we can reuse the dma buff which is already
mapped. This is very useful when iommu is on. The default skb copybreak value
is 256.

When iommu is on, we can go much higher than 256. All the drivers that supports
rx_copybreak provides module parameter to change this value. Since module
parameter is the least preferred way for changing driver values, this series
adds ethtool support for setting rx_copybreak.

v4:
Validate tunable length in ethtool_get_tunable, not in driver implemented
function.

Loose tunable_ops array for each tunable type. Define one function and let the
driver use switch case for each type.

Use double underscore for data type in UAPI headers.
Use const qualifier where possible.

v3:
Add tunable namespace to ethtool. Use new ethtool cmd ETHTOOL_S/GTUNABLE to
set/get rx_copybreak from userspace.

v2:
Add new ethtool_cmd for DMA buffer parameters, instead of adding new members to
existing ethtool_ringparam.

Govindarajulu Varadarajan (3):
  enic: implement rx_copybreak
  ethtool: Add generic options for tunables
  enic: Add tunable_ops support for rx_copybreak

 drivers/net/ethernet/cisco/enic/enic.h         |  1 +
 drivers/net/ethernet/cisco/enic/enic_ethtool.c | 39 +++++++++++++
 drivers/net/ethernet/cisco/enic/enic_main.c    | 50 +++++++++++++++-
 include/linux/ethtool.h                        |  4 ++
 include/uapi/linux/ethtool.h                   | 28 +++++++++
 net/core/ethtool.c                             | 81 ++++++++++++++++++++++++++
 6 files changed, 200 insertions(+), 3 deletions(-)

-- 
2.1.0

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

end of thread, other threads:[~2014-09-05 19:13 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-09-02 21:47 [PATCH net-next v4 0/3] enic: Add support for rx_copybreak Govindarajulu Varadarajan
2014-09-02 21:47 ` [PATCH net-next v4 1/3] enic: implement rx_copybreak Govindarajulu Varadarajan
2014-09-02 21:47 ` [PATCH net-next v4 2/3] ethtool: Add generic options for tunables Govindarajulu Varadarajan
2014-09-02 21:47 ` [PATCH net-next v4 3/3] enic: Add tunable_ops support for rx_copybreak Govindarajulu Varadarajan
2014-09-05 19:13 ` [PATCH net-next v4 0/3] enic: Add " David Miller

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