Matias Elo(matiaselo) replied on github web page:

platform/linux-generic/pktio/dpdk.c
line 70
@@ -1372,10 +1382,10 @@ static int dpdk_recv(pktio_entry_t *pktio_entry, int 
index,
        if (!pkt_dpdk->lockless_rx)
                odp_ticketlock_lock(&pkt_dpdk->rx_lock[index]);
        /**
-        * ixgbe_pmd has a minimum supported RX burst size ('min_rx_burst'). If
-        * 'num' < 'min_rx_burst', 'min_rx_burst' is used as rte_eth_rx_burst()
-        * argument and the possibly received extra packets are cached for the
-        * next dpdk_recv_queue() call to use.
+        * ixgbe and i40e drivers have a minimum supported RX burst size


Comment:
@Bill-Fischofer-Linaro Yes, the application has to request at least 
'min_rx_burst' packets but it may receive less.


> Matias Elo(matiaselo) wrote:
> @nagarahalli This dpdk driver "feature" can be completely hidden from odp 
> applications (and it already is), so I don't support adding a new device 
> capability parameter. This would make writing simple applications more 
> complex. E.g. an application wouldn't be able to receive one packet at a time 
> anymore.


>> Bill Fischofer(Bill-Fischofer-Linaro) wrote:
>> Again, shouldn't this sort of configuration be a field in the `dev_info` 
>> struct rather than having to be special-cased for each driver? Also, must 16 
>> be a "magic number" here?


>>> Dmitry Eremin-Solenikov(lumag) wrote:
>>> It looks like this should be fixed inside DPDK rather than here.


>>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote:
>>>> Presumably these drivers have a way of flushing short bursts? If the 
>>>> `min_rx_burst` is 4 and the other side sends an odd number of packets, 
>>>> presumably the receiver application isn't left hanging forever waiting for 
>>>> the rest of a burst that will never arrive?


>>>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote:
>>>>> Wouldn't it be simpler (and more extensible) to have `min_rx_burst` as a 
>>>>> field in the `dev_info` struct? 


>>>>>> nagarahalli wrote
>>>>>> 'min_rx_burst' should be added to the capability as it is a restriction 
>>>>>> from the device. The application should adjust the 'num' according to 
>>>>>> the capability it reads from the pkt I/O.


https://github.com/Linaro/odp/pull/287#discussion_r149896641
updated_at 2017-11-09 08:54:21

Reply via email to