Hi Alexander,

When I load ixgbe 3.3.8 driver with flow director as below or with no
parameters (default RSS), only 1 HW RX buffer is setup. I have included a
dump of the registers from ethtool containing the buffer sizes.

/sbin/insmod /root/mount/intel/ixgbe-3.3.8/src/ixgbe.ko  FdirMode=2,2
FdirPballoc=1,1
ifconfig eth4 up

ethtool -d eth4 | grep RXP
0x03C00: RXPBSIZE0   (Receive Packet Buffer Size 0)   0x00070000
0x03C04: RXPBSIZE1   (Receive Packet Buffer Size 1)   0x00000000
0x03C08: RXPBSIZE2   (Receive Packet Buffer Size 2)   0x00000000
0x03C0C: RXPBSIZE3   (Receive Packet Buffer Size 3)   0x00000000
0x03C10: RXPBSIZE4   (Receive Packet Buffer Size 4)   0x00000000
0x03C14: RXPBSIZE5   (Receive Packet Buffer Size 5)   0x00000000
0x03C18: RXPBSIZE6   (Receive Packet Buffer Size 6)   0x00000000
0x03C1C: RXPBSIZE7   (Receive Packet Buffer Size 7)   0x00000000

Then with RSS turned off, I can see that we have 8 full sized RX buffers.
/sbin/insmod /root/mount/intel/ixgbe-3.3.8/src/ixgbe.ko RSS=0,0
ifconfig eth4 up

ethtool -d eth4 | grep RXP
0x03C00: RXPBSIZE0   (Receive Packet Buffer Size 0)   0x00080000
0x03C04: RXPBSIZE1   (Receive Packet Buffer Size 1)   0x00080000
0x03C08: RXPBSIZE2   (Receive Packet Buffer Size 2)   0x00080000
0x03C0C: RXPBSIZE3   (Receive Packet Buffer Size 3)   0x00080000
0x03C10: RXPBSIZE4   (Receive Packet Buffer Size 4)   0x00080000
0x03C14: RXPBSIZE5   (Receive Packet Buffer Size 5)   0x00080000
0x03C18: RXPBSIZE6   (Receive Packet Buffer Size 6)   0x00080000
0x03C1C: RXPBSIZE7   (Receive Packet Buffer Size 7)   0x00080000

Is it a bug that only 1 HW RX buffer is used when Flow director or RSS is
enabled? or this expected behaviour?

Regards
Jonathan

On 13 May 2011 21:14, Alexander Duyck <[email protected]> wrote:

> On 5/13/2011 9:43 AM, Lynch, Jonathan wrote:
>
>> Hi Alex,
>>
>> I have a quick question about the ixgbe parameter FdirPballoc in relation
>> to using flow director filters and the size of the 8 packet buffers.
>>
>> FdirPballoc:Flow Director packet buffer allocation level:
>> 1 = 8k hash filters or 2k perfect filters   -  hw buffer reduced to 448Kb
>> 2 = 16k hash filters or 4k perfect filters  - hw buffer reduced to 384Kb
>> 3 = 32k hash filters or 8k perfect filters  - hw buffer reduced to 256Kb
>>
>> The hardware buffers are 512Kb in size but they if using flow director the
>> size of the buffer is diminished based on the settings for FdirPballoc.
>>
>> So for perfect filters is it a case if I set the value to 1 for
>> FdirPballoc, I can supply up to 2,000 individual filter configurations via
>> ethtool? Does wildcarding impact this?
>>
>> Regards
>> Jonathan
>>
>>
> In terms of number of rules supported the value is actually a little over
> 2K.  For mode 1 it is 2046, mode 2 it is 4094, and mode 3 supports 8190.
>
> I'm not sure what you mean by wildcarding?  Once you specify a rule you are
> locked into whatever filters and mask you configured.  So for example if you
> setup a filter that examines some portion of the source IP and destination
> IP, all of your other rules must examine those same portion of those two
> fields as well.  You cannot for example setup one rule that uses only source
> IP and another that only uses destination IP.
>
> Thanks,
>
> Alex
>
------------------------------------------------------------------------------
Achieve unprecedented app performance and reliability
What every C/C++ and Fortran developer should know.
Learn how Intel has extended the reach of its next-generation tools
to help boost performance applications - inlcuding clusters.
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
E1000-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel&#174; Ethernet, visit 
http://communities.intel.com/community/wired

Reply via email to