In the Linux kernel, the following vulnerability has been resolved:
gpiolib: cdev: Set lineevent_state::irq after IRQ register successfully
When running gpio test on nxp-ls1028 platform with below command gpiomon --num-events=3 --rising-edge gpiochip1 25 There will be a warning trace as below: Call trace: freeirq+0x204/0x360 lineeventfree+0x64/0x70 gpioioctl+0x598/0x6a0 _arm64sysioctl+0xb4/0x100 invokesyscall+0x5c/0x130 ...... el0t64sync+0x1a0/0x1a4 The reason of this issue is that calling requestthreadedirq() function failed, and then lineeventfree() is invoked to release the resource. Since the lineeventstate::irq was already set, so the subsequent invocation of freeirq() would trigger the above warning call trace. To fix this issue, set the lineevent_state::irq after the IRQ register successfully.