[dpdk-dev] [dpdk-stable] [PATCH v3] net/tap: fix flow and port commands

Ferruh Yigit ferruh.yigit at intel.com
Mon Sep 18 21:35:55 CEST 2017


On 9/18/2017 8:46 AM, Pascal Mazon wrote:

> 
> On 17/09/2017 00:32, Ophir Munk wrote:
>> This commit fixes two bugs related to tap devices. The first bug occurs
>> when executing in testpmd the following flow rule assuming tap device has
>> 4 rx and tx pair queues
>> "flow create 0 ingress pattern eth / end actions queue index 5 / end"
>> This command will report on success and will print ""Flow rule #0 created"
>> although it should have failed as queue index number 5 does not exist
>>
>> The second bug occurs when executing in testpmd "port start all" following
>> a port configuration. Assuming 1 pair of rx and tx queues an error is
>> reported: "Fail to start port 0"
>>
>> Before this commit a fixed max number (16) of rx and tx queue pairs were
>> created on startup where the file descriptors (fds) of rx and tx pairs were
>> identical.  As a result in the first bug queue index 5 existed because the
>> tap device was created with 16 rx and tx queue pairs regardless of the
>> configured number of queues. In the second bug when tap device was started
>> tx fd was closed before opening it and executing ioctl() on it. However
>> closing the sole fd of the device caused ioctl to fail with "No such
>> device".
>>
>> This commit creates the configured number of rx and tx queue pairs (up to
>> max 16) and assigns a unique fd to each queue. It was written to solve the
>> first bug and was found as the right fix for the second bug as well.
>>
>> Fixes: 02f96a0a82d1 ("net/tap: add TUN/TAP device PMD")
>> Fixes: bf7b7f437b49 ("net/tap: create netdevice during probing")
>> Fixes: de96fe68ae95 ("net/tap: add basic flow API patterns and actions")
>> Cc: stable at dpdk.org
>>
>> Signed-off-by: Ophir Munk <ophirmu at mellanox.com>

> Hi,
>
> Your reasons to keep *dev in pmd_internals are good enough for me!
>
> The rest of the patch looks fine.
>
> Acked-by: Pascal Mazon <pascal.mazon at 6wind.com>

Applied to dpdk-next-net/master, thanks.

(Welcome Ophir!)


More information about the dev mailing list