Re: [PATCH] net: Destroy previously created kthreads after failing to set napi threaded mode
From: Z qiang <hidden>
Date: 2023-06-30 05:55:34
Also in:
lkml
From: Z qiang <hidden>
Date: 2023-06-30 05:55:34
Also in:
lkml
On Fri, Jun 30, 2023 at 1:33 PM Eric Dumazet [off-list ref] wrote:
On Fri, Jun 30, 2023 at 5:27 AM Zqiang [off-list ref] wrote:quoted
When setting 1 to enable napi threaded mode, will traverse dev->napi_list and create kthread for napi->thread, if creation fails, the dev->threaded will be set to false and we will clear NAPI_STATE_THREADED bit for all napi->state in dev->napi_list, even if some napi that has successfully created the kthread before. as a result, for successfully created napi kthread, they will never be used. This commit therefore destroy previously created napi->thread if setting napi threaded mode fails.I am not sure we need this, because these kthreads are not leaked at present time. pktgen also creates unused kthreads (one per cpu), even if in most cases only one of them is used. Leaving kthreads makes it possible to eventually succeed to enable napi threaded mode after several tries, for devices with 64 or more queues...
Thanks for the reply, I understand the approach in this way. But for successfully created napi kthreads, should NAPI_STATE_THREADED bits not be cleared ? Thanks Zqiang
This would target net-next. If you claim to fix a bug (thus targeting net tree), we would need a Fixes: tag. Thanks.