Description
In the Linux kernel, the following vulnerability has been resolved: fwctl: Fix class init ordering to avoid NULL pointer dereference on device removal CXL is linked before fwctl in drivers/Makefile. Both use `module_init, so `cxl_pci_driver_init()` runs first. When `cxl_pci_probe()` calls `fwctl_register()` and then `device_add()`, fwctl_class is not yet registered because fwctl_init() hasn't run, causing `class_to_subsys()` to return NULL and skip knode_class initialization. On device removal, `class_to_subsys()` returns non-NULL, and `device_del()` calls `klist_del()` on the uninitialized knode, triggering a NULL pointer dereference.
Affected products
- Linux / Linux858ce2f56b5253063f61f6b1c58a6dbf5d71da0b – a28f56988c8e5bb9375806a5cfb0bf54d662ae3f
- Linux / Linux858ce2f56b5253063f61f6b1c58a6dbf5d71da0b – 1075f2f590fdac147f8b8010c35b606564b5c7d7
- Linux / Linux858ce2f56b5253063f61f6b1c58a6dbf5d71da0b – a55f80233f384dc89ef3425b2e1dd0e6d44bcf29
- Linux / Linux6.15 – 6.15
- Linux / Linux0 – 6.15
- Linux / Linux6.18.33 – 6.18.*
- Linux / Linux7.0.10 – 7.0.*
- Linux / Linux7.1 – *