In the Linux kernel, the following vulnerability has been resolved: ipv6/addrconf: fix a potential refcount underflow for idev Now in addrconfmodrstimer(), reference idev depends on whether rstimer is not pending. Then modify rstimer timeout. There is a time gap in [1], during which if the pending rstimer becomes not pending. It will miss to hold idev, but the rstimer is activated. Thus rstimer callback function addrconfrstimer() will be executed and put idev later without holding idev. A refcount underflow issue for idev can be caused by this. if (!timerpending(&idev->rstimer)) in6devhold(idev); <--------------[1] modtimer(&idev->rstimer, jiffies + when); To fix the issue, hold idev if mod_timer() return 0.