Loading
net: hns3: fix a deadlock problem when config TC during resetting
maillist inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/IAN3KC CVE: NA Reference: https://patchwork.kernel.org/project/netdevbpf/patch/20240813141024.1707252-4-shaojijie@huawei.com/ ---------------------------------------------------------------------- When config TC during the reset process, may cause a deadlock, the flow is as below: pf reset start │ ▼ ...... setup tc │ │ ▼ ▼ DOWN: napi_disable() napi_disable()(skip) │ │ │ ▼ ▼ ...... ...... │ │ ▼ │ napi_enable() │ ▼ UINIT: netif_napi_del() │ ▼ ...... │ ▼ INIT: netif_napi_add() │ ▼ ...... global reset start │ │ ▼ ▼ UP: napi_enable()(skip) ...... │ │ ▼ ▼ ...... napi_disable() In reset process, the driver will DOWN the port and then UINIT, in this case, the setup tc process will UP the port before UINIT, so cause the problem. Adds a DOWN process in UINIT to fix it. Fixes: bb6b94a8 ("net: hns3: Add reset interface implementation in client") Signed-off-by:Jie Wang <wangjie125@huawei.com> Signed-off-by:
Jijie Shao <shaojijie@huawei.com> Signed-off-by:
Paolo Abeni <pabeni@redhat.com>