On 11/07/2023 13.58, Pu Lehui wrote:
From: Pu Lehui <pulehui@xxxxxxxxxx> Syzkaller reported a memory leak as follows:
[...]>
In the cpu_map_update_elem flow, when kthread_stop is called before calling the threadfn of rcpu->kthread, since the KTHREAD_SHOULD_STOP bit of kthread has been set by kthread_stop, the threadfn of rcpu->kthread will never be executed, and rcpu->refcnt will never be 0, which will lead to the allocated rcpu, rcpu->queue and rcpu->queue->queue cannot be released. Calling kthread_stop before executing kthread's threadfn will return -EINTR. We can complete the release of memory resources in this state. Fixes: 6710e1126934 ("bpf: introduce new bpf cpu map type BPF_MAP_TYPE_CPUMAP") Signed-off-by: Pu Lehui <pulehui@xxxxxxxxxx>
LGTM, thanks for fixing this. Acked-by: Jesper Dangaard Brouer <hawk@xxxxxxxxxx>