[dpdk-dev] [dpdk-stable] [PATCH] app/testpmd: don't allow to dynamic change nbcore

Ferruh Yigit ferruh.yigit at intel.com
Mon Nov 2 16:20:36 CET 2020


On 10/30/2020 10:46 AM, Ferruh Yigit wrote:
> On 10/29/2020 4:43 AM, Dharmik Thakkar wrote:
> 
> <...>
> 
>>> On Oct 27, 2020, at 1:42 AM, Zhou Zhenghua <zhenghuax.zhou at intel.com> wrote:
>>>
>>> When changing the number of forwarding cores in runtime, two issues may be
>>> encountered:
>>>
>>>   - If the setting nbcore little than current nbcore, the forwarding
>>>     thread will still running on the extra cores. Therefore, trying to
>>>     stop forwarding will hang testpmd, since it will wait for the extra
>>>     cores to stop.
>>>
>>>   - If the setting nbcore greate than actual nbcore, the newly added
>>>     cores are not allocated resources.
>>>
>>> This will face the problem of dynamic resource allocation, so it's not
>>> allow to changes nbcore number when forwarding is running.
>>>
>>> Fixes: 0c0db76f42ed ("app/testpmd: separate forward config setup from display")
>>> Cc: bernard.iremonger at intel.com
>>> Cc: stable at dpdk.org
>>>
>>> Signed-off-by: Zhou Zhenghua <zhenghuax.zhou at intel.com>
>>
>  > Hi Zhou,
>  >
>  > Although, I see that a few of the configuration options are checking for 
> ’test_done’, I am wondering if it is truly required.
>  > Since, as per the documentation guidelines:
>  > 'Configuration changes only become active when forwarding is started/restarted.’
>  >
> Yes documentation has it and I think that is what happens in below bullet 2 
> (increase core count).
> 
> But it is easy to reproduce the hung mentioned in the first bullet, I am for 
> having this fix.
> And this won't contradict with the above document, the config options you can 
> set will be taken account when forwarding is started/restarted, but this one 
> won't be set because of added check, hence:
> Acked-by: Ferruh Yigit <ferruh.yigit at intel.com>
> 
> @Zhou,
> do you have any objection to remove bullet 2 while merging?

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

Updated the commit log as following:

     app/testpmd: do not allow dynamic change of nbcore

     When the number of forwarding cores changed in runtime, the issue may
     be encountered:
     If the nbcore set little than current nbcore, the forwarding thread
     will still running on the extra cores. Therefore, trying to stop
     forwarding will hang testpmd, since it will wait for the extra cores to
     stop.

     So do not allow to change nbcore number when forwarding is running.

     Fixes: 0c0db76f42ed ("app/testpmd: separate forward config setup from display")
     Cc: stable at dpdk.org


More information about the dev mailing list