In the Linux kernel, the following vulnerability has been resolved:
iio: light: isl29028: Fix the warning in isl29028_remove()
The driver use the non-managed form of the register function in isl29028_remove(). To keep the release order as mirroring the ordering in probe, the driver should use non-managed form in probe, too.
The following log reveals it:
[ 32.374955] isl29028 0-0010: remove [ 32.376861] general protection fault, probably for non-canonical address 0xdffffc0000000006: 0000 [#1] PREEMPT SMP KASAN PTI [ 32.377676] KASAN: null-ptr-deref in range [0x0000000000000030-0x0000000000000037] [ 32.379432] RIP: 0010:kernfsfindandgetns+0x28/0xe0 [ 32.385461] Call Trace: [ 32.385807] sysfsunmergegroup+0x59/0x110 [ 32.386110] dpmsysfsremove+0x58/0xc0 [ 32.386391] devicedel+0x296/0xe50 [ 32.386959] cdevdevicedel+0x1d/0xd0 [ 32.387231] devmiiodeviceunreg+0x27/0xb0 [ 32.387542] devresreleasegroup+0x319/0x3d0 [ 32.388162] i2cdeviceremove+0x93/0x1f0