Description
In the Linux kernel, the following vulnerability has been resolved: bnxt_en: Fix error handling path in bnxt_init_chip() WARN_ON() is triggered in __flush_work() if bnxt_init_chip() fails because we call cancel_work_sync() on dim work that has not been initialized. WARNING: CPU: 37 PID: 5223 at kernel/workqueue.c:4201 __flush_work.isra.0+0x212/0x230 The driver relies on the BNXT_STATE_NAPI_DISABLED bit to check if dim work has already been cancelled. But in the bnxt_open() path, BNXT_STATE_NAPI_DISABLED is not set and this causes the error path to think that it needs to cancel the uninitalized dim work. Fix it by setting BNXT_STATE_NAPI_DISABLED during initialization. The bit will be cleared when we enable NAPI and initialize dim work.
Product status
f697217f980ffc796c72c34dbf7d59a6b1996888 (git) before e039b00ddbfeaa0dc59b8659be114f1a1b37c5bf
40452969a50652e3cbf89dac83d54eebf2206d27 (git) before 21116727f452474502ee74f956d5e7466103e19b
40452969a50652e3cbf89dac83d54eebf2206d27 (git) before 9ab7a709c926c16b4433cf02d04fcbcf35aaab2b
6.12.10 (semver) before 6.12.28
6.13
Any version before 6.13
6.12.28 (semver)
6.14.6 (semver)
6.15 (original_commit_for_fix)
References
git.kernel.org/...c/e039b00ddbfeaa0dc59b8659be114f1a1b37c5bf
git.kernel.org/...c/21116727f452474502ee74f956d5e7466103e19b
git.kernel.org/...c/9ab7a709c926c16b4433cf02d04fcbcf35aaab2b