Re: [PATCH bpf v5] bpf, cgroup: Fix storage null-ptr-deref after replacing prog

Pu Lehui <[email protected]>
Newsgroups org.kernel.vger.bpf,org.kernel.vger.linux-kernel
Message-ID <[email protected]>

On 2026/8/5 12:59, Leon Hwang wrote:
> On 5/8/26 11:53, Pu Lehui wrote:
>> From: Pu Lehui <[email protected]>
>>
>> Syzkaller reported a storage null-ptr-deref issue after replacing prog.
>> This occurs in the following scenario:
>> 1. prog A, an empty prog, is attached to a cgrp.
>> 2. prog B uses BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE and calls the
>>     bpf_get_local_storage helper.
>> 3. link_update is called to replace prog A with prog B.
>>
>> The reason is that __cgroup_bpf_replace fails to alloc and assign the
>> required cgrp storage for the incoming replacement prog. Consequently,
>> the new prog inherits an uninit storage, leading to null-ptr-deref panic
>> when kick the new prog.
>>
>> Fix this by rejecting link update with -EPERM if new_prog's cgroup
>> storage is incompatible with link->prog.
>>
>> Fixes: 0c991ebc8c69 ("bpf: Implement bpf_prog replacement for an active bpf_cgroup_link")
>> Reviewed-by: Amery Hung <[email protected]>
>> Signed-off-by: Pu Lehui <[email protected]>
> 
> 
> Looks much simpler than the previous versions.
> 
> Other than the -EPERM in the commit msg, lgtm.

Thanks review, I'd better send a new version first.

> 
> Acked-by: Leon Hwang <[email protected]>
> 
>> [...]
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.