mashoujiang / netmap

Automatically exported from code.google.com/p/netmap
0 stars 0 forks source link

Can't seem to set to TX/RX slots for modified IXGBE driver (with netmap patch) #19

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Load the netmap enabled IXGBE driver
2. Run the following ethtool commands (no errors from running that)
ethtool -G eth2 rx 32768
ethtool -G eth2 tx 32768

3. Run tcpreplay with netmap enabled (4.0.4)

What is the expected output? What do you see instead?

tcpreplay will hang, see attached for dmesg (with netmap verbose enabled)

What version of the product are you using? On what operating system?
latest netmap, ubuntu 14.04 (ixgbe driver is 3.15.1-k)

I also noticed that ixgbe driver with netmap does not recognize the RSS 
options, is that expected behavior as well?

Original issue reported on code.google.com by morph...@gmail.com on 9 Sep 2014 at 6:05

Attachments:

GoogleCodeExporter commented 9 years ago
Hi morphino,

note that the ixgbe driver should have an hard limit at 4096 for the number of 
tx/rx slots (see IXGBE_MAX_TXD and IXGBE_MAX_RXD in ixgbe/ixgbe.h). ethtool 
does not fail if you ask for more, but you can check with 'ethtool -g eth2' 
what you really have got. 

In any case, the default maximum netmap ring size is too small even for 4096 
slots.
Therefore, unless you have already changed the default, this should cause an 
error on netmap initialization which is perhaps confusing tcpreplay.

Please try to raise the maximum netmap ring size with

echo $((2**17)) > /sys/module/netmap_lin/parameters/ring_size

and try again. 

Cheers,
Giuseppe

Original comment by giuseppe.lettieri73 on 14 Sep 2014 at 8:12

GoogleCodeExporter commented 9 years ago
thanks, this is great info

Original comment by morph...@gmail.com on 19 Sep 2014 at 12:37

GoogleCodeExporter commented 9 years ago
Hi Guiseppe:

Adjusting the ring_size greatly enhanced netmap performance. I'm curious what 
other parameters I can use for further enhancements? I have played abit with 
ring_num and buf_size and buf_num, but i'm not familiar with what they are. 

Original comment by morph...@gmail.com on 13 Oct 2014 at 11:59

GoogleCodeExporter commented 9 years ago
this can be closed

Original comment by morph...@gmail.com on 22 Oct 2014 at 8:44

GoogleCodeExporter commented 9 years ago

Original comment by giuseppe.lettieri73 on 22 Oct 2014 at 9:45