On 2026/1/28 10:27, Kumar Kartikeya Dwivedi wrote:
> On Fri, 23 Jan 2026 at 06:58, Leon Hwang <[email protected]> wrote:
>>
>> Disallow combining BPF_F_LOCK with map values that contain special BTF
>> fields other than bpf_spin_lock (e.g. kptr or uptr). Such mixing may lead
>> to subtle or undefined behavior in map value handling. Reject these
>> combinations early by returning -EOPNOTSUPP.
>
> The commit log is really suboptimal in giving context on why you're doing
> this.
> You should summarize the discussion from [0], otherwise unless people
> go dig that thread they'd have no clue.
>
> Also, I would remove the 'undefined behavior' wording. It's just
> semantically different, in that the update doesn't free fields,
> but there's no undefined behavior.
>
> [0]:
> https://lore.kernel.org/bpf/CAADnVQLib8ebe8cmGRj98YZiArendX8u=dsknurufz6ngq7...@mail.gmail.com
>
Agreed.
The commit message needs more context. I'll summarize the prior
discussion and clearly explain why the BPF_F_LOCK + special-field
combination is being disallowed, without using “undefined behavior” wording.
> Please also increase test coverage for other maps in patch 2. Even if
> covering all local storages is not practical, we can definitely do
> task local storage.
>
Ack.
I'll add a test to cover the change of task local storage.
Thanks,
Leon
[...]