In the Linux kernel, the following vulnerability has been resolved:
net: encx24j600: check error in devmregmapinit_encx24j600
devmregmapinit may return error which caused by like out of memory, this will results in null pointer dereference later when reading or writing register:
general protection fault in encx24j600spiprobe KASAN: null-ptr-deref in range [0x0000000000000090-0x0000000000000097] CPU: 0 PID: 286 Comm: spi-encx24j600- Not tainted 5.15.0-rc2-00142-g9978db750e31-dirty #11 9c53a778c1306b1b02359f3c2bbedc0222cba652 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.13.0-1ubuntu1.1 04/01/2014 RIP: 0010:regcachecachebypass drivers/base/regmap/regcache.c:540 Code: 54 41 89 f4 55 53 48 89 fb 48 83 ec 08 e8 26 94 a8 fe 48 8d bb a0 00 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <80> 3c 02 00 0f 85 4a 03 00 00 4c 8d ab b0 00 00 00 48 8b ab a0 00 RSP: 0018:ffffc900010476b8 EFLAGS: 00010207 RAX: dffffc0000000000 RBX: fffffffffffffff4 RCX: 0000000000000000 RDX: 0000000000000012 RSI: ffff888002de0000 RDI: 0000000000000094 RBP: ffff888013c9a000 R08: 0000000000000000 R09: fffffbfff3f9cc6a R10: ffffc900010476e8 R11: fffffbfff3f9cc69 R12: 0000000000000001 R13: 000000000000000a R14: ffff888013c9af54 R15: ffff888013c9ad08 FS: 00007ffa984ab580(0000) GS:ffff88801fe00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000055a6384136c8 CR3: 000000003bbe6003 CR4: 0000000000770ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 PKRU: 55555554 Call Trace: encx24j600spiprobe drivers/net/ethernet/microchip/encx24j600.c:459 spiprobe drivers/spi/spi.c:397 reallyprobe drivers/base/dd.c:517 _driverprobedevice drivers/base/dd.c:751 driverprobedevice drivers/base/dd.c:782 _deviceattachdriver drivers/base/dd.c:899 busforeachdrv drivers/base/bus.c:427 _deviceattach drivers/base/dd.c:971 busprobedevice drivers/base/bus.c:487 deviceadd drivers/base/core.c:3364 _spiadddevice drivers/spi/spi.c:599 spiadddevice drivers/spi/spi.c:641 spinewdevice drivers/spi/spi.c:717 newdevicestore+0x18c/0x1f1 [spistub 4e02719357f1ff33f5a43d00630982840568e85e] devattrstore drivers/base/core.c:2074 sysfskfwrite fs/sysfs/file.c:139 kernfsfopwriteiter fs/kernfs/file.c:300 newsyncwrite fs/readwrite.c:508 (discriminator 4) vfswrite fs/readwrite.c:594 ksyswrite fs/readwrite.c:648 dosyscall64 arch/x86/entry/common.c:50 entrySYSCALL64afterhwframe arch/x86/entry/entry_64.S:113
Add error check in devmregmapinit_encx24j600 to avoid this situation.