From: Alexei Starovoitov Date: Sat, 31 Jan 2026 05:13:48 +0000 (-0800) Subject: Merge branch 'bpf-unify-special-map-field-validation-in-verifier' X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cda0cbfdeefe7690370595f72be277de0ad7b096;p=thirdparty%2Fkernel%2Flinux.git Merge branch 'bpf-unify-special-map-field-validation-in-verifier' Mykyta Yatsenko says: ==================== The BPF verifier validates pointers to special map fields (timers, workqueues, task_work) through separate functions that share nearly identical logic. This creates code duplication because of the inconsistent data structure layout in struct bpf_call_arg_meta struct bpf_kfunc_call_arg_meta. This series contains 2 commits: 1. Introduces struct bpf_map_desc to provide a unified representation for map pointer and uid tracking. Previously, bpf_call_arg_meta used separate map_ptr and map_uid fields while bpf_kfunc_call_arg_metaused an anonymous inline struct. This inconsistency made it harder to share validation code between the two paths. 2. Consolidates the validation logic for BPF_TIMER, BPF_WORKQUEUE, and BPF_TASK_WORK field types into a single check_map_field_pointer() function. This eliminates process_wq_func() and process_task_work_func() entirely, and simplifies process_timer_func() to just the PREEMPT_RT check before calling the unified validation. The result is fewer lines of code with clearer structure for future maintenance. Signed-off-by: Mykyta Yatsenko Changes in v2: - Added Signed-off-by to the top commit. - Link to v1: https://lore.kernel.org/r/20260129-verif_special_fields-v1-0-d310b7f146c8@meta.com ==================== Link: https://patch.msgid.link/20260130-verif_special_fields-v2-0-2c59e637da7d@meta.com Signed-off-by: Alexei Starovoitov --- cda0cbfdeefe7690370595f72be277de0ad7b096