[PATCH v2] app/testpmd: fix invalid queue ID when start port

lihuisong (C) lihuisong at huawei.com
Thu Jul 6 04:48:23 CEST 2023


在 2023/7/5 19:41, Ferruh Yigit 写道:
> On 7/5/2023 10:40 AM, lihuisong (C) wrote:
>> 在 2023/7/5 16:02, Ferruh Yigit 写道:
>>> On 7/5/2023 4:16 AM, lihuisong (C) wrote:
>>>> 在 2023/7/4 18:59, Ferruh Yigit 写道:
>>>>> On 7/4/2023 9:45 AM, Jie Hai wrote:
>>>>>> Function update_queue_state updates queue state of all queues
>>>>>> of all ports, using the queue num nb_rxq|nb_txq stored locally
>>>>>> by testpmd. An error on the invalid queue ID occurs if we run
>>>>>> testpmd with two ports and detach-attach one of them and start
>>>>>> the other port first. This is because the attached port has not
>>>>>> been configured and has no queues, which differs from nb_rxq|nb_txq.
>>>>>> The similar error happens in multi-process senoris if secondary
>>>>>> process attaches a port and starts it.
>>>>>>
>>>>>> This patch updates queue state of the specified port, which has
>>>>>> been configured by primary process. As the secondary process
>>>>>> cannot configure the ports, make sure that the secondary process
>>>>>> starts the port only after the primary process has done so.
>>>> Now look good to me.
>>>> Acked-by: Huisong Li <lihuisong at huawei.com>
>>>>>> Fixes: 141a520b35f7 ("app/testpmd: fix primary process not polling
>>>>>> all queues")
>>>>>> Fixes: 5028f207a4fa ("app/testpmd: fix secondary process packet
>>>>>> forwarding")
>>>>>> Cc: stable at dpdk.org
>>>>>>
>>>>>> Signed-off-by: Jie Hai <haijie1 at huawei.com>
>>>>>>
>>>>> The problem description and solution looks reasonable to me, but Intel
>>>>> testing still reporting the issue.
>>>>>
>>>>> There is a chance that the issue Intel side observing is different,
>>>>> waiting for more information from Intel test team.
>>>>>
>>>>> .
>>> Hi Song,
>>>
>>> As far as I understand this patch works with an update from ixgbevf
>>> driver, can you please confirm?
>>> And can we have the ixgbevf fix soon, to not block the -rc3?
>>>
>> Hi Ferruh,
>>
>> Yes, ixgbe is not setting queue status correctly.
>> Whether tesptmd polls the queue depends on the queue status
>> (dev->data->rx_queue_state[queue_id]).
>> But some drivers (not just ixgbe) do not set the status correctly.
>> Jie is doing this. will be sent ASAP.
>>
> Hi Huisong, Jie
>
> As you said some drivers don't do it right, and my concern is:
> a) if we have a side effect from last minute changes from drivers,
> b) if there are more drivers impacted but not recognized yet
>
> That is why my proposal is to revert Jie's fix for this release, record
> known issue, and merge it back early next release to give more time to
> drivers adjust. What do you think?
Agreed.
And we can also take a look at Jie's fix for other drivers later.


More information about the dev mailing list