On Wed, 1 May 2024 12:13:45 +0100 Ferruh Yigit <ferruh.yi...@amd.com> wrote:
> > diff --git a/drivers/net/tap/tap_flow.c b/drivers/net/tap/tap_flow.c > > index fa50fe45d7..a78fd50cd4 100644 > > --- a/drivers/net/tap/tap_flow.c > > +++ b/drivers/net/tap/tap_flow.c > > @@ -1595,8 +1595,9 @@ tap_flow_isolate(struct rte_eth_dev *dev, > > * If netdevice is there, setup appropriate flow rules immediately. > > * Otherwise it will be set when bringing up the netdevice (tun_alloc). > > */ > > - if (!process_private->rxq_fds[0]) > > + if (process_private->fds[0] == -1) > > > > change in the condition looks reasonable but not directly related with > the change, does it require its own patch? In this case, the array of fds is moving from the rxq to being global. The old code worked because rxq_fds[] was initialized to zero. With shared fd's the fds are now initialized to -1. Using zero as sentinel fd is bad practice, because it is a valid fd; but POSIX says it always is stdin.