In the Linux kernel, the following vulnerability has been resolved:
drm/xe/pf: Fix sysfs initialization
In case of devmaddactionorreset() failure the provided cleanup action will be run immediately on the not yet initialized kobject. This may lead to errors like:
[ ] kobject: '(null)' (ff110001393608e0): is not initialized, yet kobjectput() is being called. [ ] WARNING: lib/kobject.c:734 at kobjectput+0xd9/0x250, CPU#0: kworker/0:0/9 [ ] RIP: 0010:kobjectput+0xdf/0x250 [ ] Call Trace: [ ] xesriovpfsysfsinit+0x21/0x100 [xe] [ ] xesriovpfinitlate+0x87/0x2b0 [xe] [ ] xesriovinitlate+0x5f/0x2c0 [xe] [ ] xedeviceprobe+0x5f2/0xc20 [xe] [ ] xepciprobe+0x396/0x610 [xe] [ ] localpciprobe+0x47/0xb0
[ ] refcountt: underflow; use-after-free. [ ] WARNING: lib/refcount.c:28 at refcountwarnsaturate+0x68/0xb0, CPU#0: kworker/0:0/9 [ ] RIP: 0010:refcountwarnsaturate+0x68/0xb0 [ ] Call Trace: [ ] kobjectput+0x174/0x250 [ ] xesriovpfsysfsinit+0x21/0x100 [xe] [ ] xesriovpfinitlate+0x87/0x2b0 [xe] [ ] xesriovinitlate+0x5f/0x2c0 [xe] [ ] xedeviceprobe+0x5f2/0xc20 [xe] [ ] xepciprobe+0x396/0x610 [xe] [ ] localpci_probe+0x47/0xb0
Fix that by calling kobjectinit() and kobjectadd() separately and register cleanup action after the kobject is initialized.
Also make this cleanup registration a part of the create helper to fix another mistake, as in the loop we were wrongly passing parent kobject while registering cleanup action, and this resulted in some undetected leaks.
(cherry picked from commit 98b16727f07e26a5d4de84d88805ce7ffcfdd324)
{
"cna_assigner": "Linux",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/46xxx/CVE-2026-46264.json"
}