Commit graph android_packages_modules_Co.../bpf/loader/NetBpfLoad.cpp
Message SHA1
NetBpfLoad: remove foo@1.o support
No longer needed now that we have a single loader
which can support everything.

Test: TreeHugger
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I74c24016265a2b41d818d55c98cbabde04687dd8

Maciej Żenczykowski   commited 2025-07-29 19:53:09 -07:00
08ad51519a
Merge "NetBpfLoad: Load netd.o by libbpf on 25Q3+" into main
Maciej Żenczykowski   authored and   Android (Google) Code Review   commited 2025-07-29 08:08:55 -07:00
1a2f7c35a4
Merge changes If57594b4,Iecb07123 into main
* changes:
  NetBpfLoad: Load dscpPolicy.o by libbpf on 25Q3+
  NetBpfLoad: Load clatd.o by libbpf on 25Q3+

Maciej Żenczykowski   authored and   Android (Google) Code Review   commited 2025-07-29 08:08:41 -07:00
a39fa3b3d5
Merge "NetBpfLoad: Load test.o by libbpf on 25Q3+" into main
Maciej Żenczykowski   authored and   Android (Google) Code Review   commited 2025-07-29 08:07:41 -07:00
fae303f20b
NetBpfLoad: Load netd.o by libbpf on 25Q3+
Before this change
"""
$ adb shell ls -lZ /sys/fs/bpf/netd_shared/
total 0
drwxrwxrwt 2 root root        u:object_r:fs_bpf_netd_shared:s0    0 2025-07-29 19:52 mainline_done
----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:52 map_netd_app_uid_stats_map
----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:52 map_netd_blocked_ports_map
-r--rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 map_netd_configuration_map
-rw-rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_shared:s0    0 2025-07-29 19:52 map_netd_cookie_tag_map
-r--rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 map_netd_data_saver_enabled_map
----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:52 map_netd_iface_index_name_map
----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:52 map_netd_iface_stats_map
----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:52 map_netd_ingress_discard_map
----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:52 map_netd_local_net_access_map
----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:52 map_netd_local_net_blocked_uid_map
-rw-rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_shared:s0    0 2025-07-29 19:52 map_netd_lock_array_test_map
-rw-rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_shared:s0    0 2025-07-29 19:52 map_netd_lock_hash_test_map
----rw---- 1 root system      u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:52 map_netd_packet_trace_enabled_map
----rw---- 1 root system      u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:52 map_netd_packet_trace_ringbuf
----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:52 map_netd_sk_storage
-r--rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 map_netd_stats_map_A
-r--rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 map_netd_stats_map_B
----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:52 map_netd_uid_counterset_map
-r--rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 map_netd_uid_owner_map
-r--rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 map_netd_uid_permission_map
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 prog_netd_bind4_inet4_bind
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 prog_netd_bind6_inet6_bind
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 prog_netd_cgroupskb_egress_stats
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 prog_netd_cgroupskb_ingress_stats
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 prog_netd_cgroupsock_inet_create
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 prog_netd_cgroupsockrelease_inet_release
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 prog_netd_connect4_inet4_connect
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 prog_netd_connect6_inet6_connect
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 prog_netd_getsockopt_prog
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 prog_netd_recvmsg4_udp4_recvmsg
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 prog_netd_recvmsg6_udp6_recvmsg
-r--r----- 1 root net_admin   u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:52 prog_netd_schedact_ingress_account
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 prog_netd_sendmsg4_udp4_sendmsg
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 prog_netd_sendmsg6_udp6_sendmsg
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:52 prog_netd_setsockopt_prog
-r--r----- 1 root net_admin   u:object_r:fs_bpf_netd_shared:s0    0 2025-07-29 19:52 prog_netd_skfilter_allowlist_xtbpf
-r--r----- 1 root net_admin   u:object_r:fs_bpf_netd_shared:s0    0 2025-07-29 19:52 prog_netd_skfilter_denylist_xtbpf
-r--r----- 1 root net_admin   u:object_r:fs_bpf_netd_shared:s0    0 2025-07-29 19:52 prog_netd_skfilter_egress_xtbpf
-r--r----- 1 root net_admin   u:object_r:fs_bpf_netd_shared:s0    0 2025-07-29 19:52 prog_netd_skfilter_ingress_xtbpf

$ adb logcat
07-29 19:52:24.598   792   792 D NetBpfLoad: Loaded object: /apex/com.android.tethering/etc/bpf/mainline/netd.o, libbpf: 0
"""

After this change
"""
$ adb shell ls -lZ /sys/fs/bpf/netd_shared/
motomuman@DESK:/disk/main$ adb shell ls -lZ /sys/fs/bpf/netd_shared/
total 0
drwxrwxrwt 2 root root        u:object_r:fs_bpf_netd_shared:s0    0 2025-07-29 19:56 mainline_done
----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:56 map_netd_app_uid_stats_map
----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:56 map_netd_blocked_ports_map
-r--rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 map_netd_configuration_map
-rw-rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_shared:s0    0 2025-07-29 19:56 map_netd_cookie_tag_map
-r--rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 map_netd_data_saver_enabled_map
----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:56 map_netd_iface_index_name_map
----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:56 map_netd_iface_stats_map
----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:56 map_netd_ingress_discard_map
----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:56 map_netd_local_net_access_map
----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:56 map_netd_local_net_blocked_uid_map
-rw-rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_shared:s0    0 2025-07-29 19:56 map_netd_lock_array_test_map
-rw-rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_shared:s0    0 2025-07-29 19:56 map_netd_lock_hash_test_map
----rw---- 1 root system      u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:56 map_netd_packet_trace_enabled_map
----rw---- 1 root system      u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:56 map_netd_packet_trace_ringbuf
----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:56 map_netd_sk_storage
-r--rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 map_netd_stats_map_A
-r--rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 map_netd_stats_map_B
----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:56 map_netd_uid_counterset_map
-r--rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 map_netd_uid_owner_map
-r--rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 map_netd_uid_permission_map
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 prog_netd_bind4_inet4_bind
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 prog_netd_bind6_inet6_bind
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 prog_netd_cgroupskb_egress_stats
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 prog_netd_cgroupskb_ingress_stats
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 prog_netd_cgroupsock_inet_create
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 prog_netd_cgroupsockrelease_inet_release
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 prog_netd_connect4_inet4_connect
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 prog_netd_connect6_inet6_connect
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 prog_netd_getsockopt_prog
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 prog_netd_recvmsg4_udp4_recvmsg
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 prog_netd_recvmsg6_udp6_recvmsg
-r--r----- 1 root net_admin   u:object_r:fs_bpf_net_shared:s0     0 2025-07-29 19:56 prog_netd_schedact_ingress_account
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 prog_netd_sendmsg4_udp4_sendmsg
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 prog_netd_sendmsg6_udp6_sendmsg
-r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-29 19:56 prog_netd_setsockopt_prog
-r--r----- 1 root net_admin   u:object_r:fs_bpf_netd_shared:s0    0 2025-07-29 19:56 prog_netd_skfilter_allowlist_xtbpf
-r--r----- 1 root net_admin   u:object_r:fs_bpf_netd_shared:s0    0 2025-07-29 19:56 prog_netd_skfilter_denylist_xtbpf
-r--r----- 1 root net_admin   u:object_r:fs_bpf_netd_shared:s0    0 2025-07-29 19:56 prog_netd_skfilter_egress_xtbpf
-r--r----- 1 root net_admin   u:object_r:fs_bpf_netd_shared:s0    0 2025-07-29 19:56 prog_netd_skfilter_ingress_xtbpf

$ adb logcat
07-29 19:56:31.625   788   788 D NetBpfLoad: Loaded object: /apex/com.android.tethering/etc/bpf/mainline/netd.o, libbpf: 1
"""

Bug: 428792764
Flag: EXEMPT mainline
Test: TH
Change-Id: I79b007450df134533fd780a9e94361361d862fb8

Motomu Utsumi   commited 2025-07-29 19:58:42 +09:00
15aedc9b4a
NetBpfLoad: Load dscpPolicy.o by libbpf on 25Q3+
Before this change
"""
$ adb shell ls -lZ /sys/fs/bpf/net_shared/*dscp*
-rw-rw---- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-29 19:46 /sys/fs/bpf/net_shared/map_dscpPolicy_ipv4_dscp_policies_map
-rw-rw---- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-29 19:46 /sys/fs/bpf/net_shared/map_dscpPolicy_ipv6_dscp_policies_map
---------- 1 root root   u:object_r:fs_bpf_loader:s0      0 2025-07-29 19:46 /sys/fs/bpf/net_shared/map_dscpPolicy_socket_policy_cache_map
-r--r----- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-29 19:46 /sys/fs/bpf/net_shared/prog_dscpPolicy_schedcls_set_dscp_ether

$ adb logcat
07-29 19:46:24.468   794   794 D NetBpfLoad: Loaded object: /apex/com.android.tethering/etc/bpf/mainline/dscpPolicy.o, libbpf: 0
"""

After this change
"""
$ adb shell ls -lZ /sys/fs/bpf/net_shared/*dscp*
-rw-rw---- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-29 19:52 /sys/fs/bpf/net_shared/map_dscpPolicy_ipv4_dscp_policies_map
-rw-rw---- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-29 19:52 /sys/fs/bpf/net_shared/map_dscpPolicy_ipv6_dscp_policies_map
---------- 1 root root   u:object_r:fs_bpf_loader:s0      0 2025-07-29 19:52 /sys/fs/bpf/net_shared/map_dscpPolicy_socket_policy_cache_map
-r--r----- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-29 19:52 /sys/fs/bpf/net_shared/prog_dscpPolicy_schedcls_set_dscp_ether

$ adb logcat
07-29 19:52:24.493   792   792 D NetBpfLoad: Loaded object: /apex/com.android.tethering/etc/bpf/mainline/dscpPolicy.o, libbpf: 1
"""

Bug: 428792764
Flag: EXEMPT mainline
Test: TH
Change-Id: If57594b490908eb46070812c12e611c2804fe251

Motomu Utsumi   commited 2025-07-29 19:58:33 +09:00
0062e898f0
NetBpfLoad: Load clatd.o by libbpf on 25Q3+
Before this change
"""
$ adb shell ls -lZ /sys/fs/bpf/net_shared/*clat*
-rw-rw---- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-29 19:41 /sys/fs/bpf/net_shared/map_clatd_clat_egress4_map
-rw-rw---- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-29 19:41 /sys/fs/bpf/net_shared/map_clatd_clat_ingress6_map
-r--r----- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-29 19:41 /sys/fs/bpf/net_shared/prog_clatd_schedcls_egress4_clat_rawip
-r--r----- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-29 19:41 /sys/fs/bpf/net_shared/prog_clatd_schedcls_ingress6_clat_ether
-r--r----- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-29 19:41 /sys/fs/bpf/net_shared/prog_clatd_schedcls_ingress6_clat_rawip

$ adb logcat
07-29 19:41:34.556   800   800 D NetBpfLoad: Loaded object: /apex/com.android.tethering/etc/bpf/mainline/clatd.o, libbpf: 0
"""

After this change
"""
$ adb shell ls -lZ /sys/fs/bpf/net_shared/*clat*
-rw-rw---- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-29 19:46 /sys/fs/bpf/net_shared/map_clatd_clat_egress4_map
-rw-rw---- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-29 19:46 /sys/fs/bpf/net_shared/map_clatd_clat_ingress6_map
-r--r----- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-29 19:46 /sys/fs/bpf/net_shared/prog_clatd_schedcls_egress4_clat_rawip
-r--r----- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-29 19:46 /sys/fs/bpf/net_shared/prog_clatd_schedcls_ingress6_clat_ether
-r--r----- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-29 19:46 /sys/fs/bpf/net_shared/prog_clatd_schedcls_ingress6_clat_rawip

$ adb logcat
07-29 19:46:24.453   794   794 D NetBpfLoad: Loaded object: /apex/com.android.tethering/etc/bpf/mainline/clatd.o, libbpf: 1
"""

Bug: 428792764
Flag: EXEMPT mainline
Test: TH
Change-Id: Iecb07123ca7bc6bfa8649202ed212731398beeae

Motomu Utsumi   commited 2025-07-29 19:58:04 +09:00
f5044b7363
NetBpfLoad: Load test.o by libbpf on 25Q3+
Before this change
"""
$ adb shell ls -lZ /sys/fs/bpf/tethering/map_test*
-rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-29 19:35 /sys/fs/bpf/tethering/map_test_bitmap
-rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-29 19:35 /sys/fs/bpf/tethering/map_test_tether2_downstream6_map
-rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-29 19:35 /sys/fs/bpf/tethering/map_test_tether3_downstream6_map
-rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-29 19:35 /sys/fs/bpf/tethering/map_test_tether_downstream6_map

$ adb logcat
07-29 19:35:18.994   790   790 D NetBpfLoad: Loaded object: /apex/com.android.tethering/etc/bpf/mainline/test.o, libbpf: 0
"""

After this change
"""
$ adb shell ls -lZ /sys/fs/bpf/tethering/map_test*
-rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-29 19:41 /sys/fs/bpf/tethering/map_test_bitmap
-rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-29 19:41 /sys/fs/bpf/tethering/map_test_tether2_downstream6_map
-rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-29 19:41 /sys/fs/bpf/tethering/map_test_tether3_downstream6_map
-rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-29 19:41 /sys/fs/bpf/tethering/map_test_tether_downstream6_map

$ adb logcat
07-29 19:41:34.547   800   800 D NetBpfLoad: Loaded object: /apex/com.android.tethering/etc/bpf/mainline/test.o, libbpf: 1
"""

Bug: 428792764
Flag: EXEMPT mainline
Test: TH
Change-Id: I5525bc277960c7257724bd6a0a764653f6dfb186

Motomu Utsumi   commited 2025-07-29 19:57:53 +09:00
4efd544c41
NetBpfLoad: eliminate 'domain' concept
No longer useful in a self-contained mainline world.

Test: TreeHugger
Flag: EXEMPT mainline
Signed-off-by: Maciej Żenczykowski <maze@google.com
Change-Id: I9dffa848e5323cf0c2ef9873caeb89bf2b2e8656

Maciej Żenczykowski   commited 2025-07-28 18:45:12 -07:00
f297f808bb
NetBpfLoad: eliminate getDomainFromPinSubdir()
(and enforce that pindir is actually specified and not empty)

Test: TreeHugger
Flag: EXEMPT mainline
Signed-off-by: Maciej Żenczykowski <maze@google.com
Change-Id: I366aebebed2b39ffd64a90fd9199805d342c2d4a

Maciej Żenczykowski   commited 2025-07-28 18:44:17 -07:00
1fdc303788
NetBpfLoad: remove specified(pin_subdir) checks
pin_subdir is now always specified...

Of the 4 checks, 2 are only for ALOGV low-value logging,
I've always thought we should probably just remove that.

The other 2 checks appear to actually be buggy.
They should probably be checking selinux_context rather
than pin_subdir, since pin_subdir likely (untested)
just works fine.

Verify via:
  git grep 'specified[(]pin_subdir[)]'

Test: TreeHugger
Flag: EXEMPT mainline
Signed-off-by: Maciej Żenczykowski <maze@google.com
Change-Id: Id98dc9ce4e0a586821bbbb53ecc3ac503f095131

Maciej Żenczykowski   commited 2025-07-28 17:41:21 -07:00
037a1cee8c
NetBpfLoad: remove 'prefix' from lookupPinSubDir()
Test: TreeHugger
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Ief8e0d44efc5b1bc235ba70d78875c0ef0e9ed76

Maciej Żenczykowski   commited 2025-07-28 15:37:15 -07:00
16a2448bd8
NetBpfLoad: remove 'prefix' from buildProgPinLoc()
Test: TreeHugger
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I05541f7b29e14ab60e7db71d8d90581def26c279

Maciej Żenczykowski   commited 2025-07-28 15:36:27 -07:00
c0136b1e4f
NetBpfload: remove 'prefix' from loadCodeSections()
Test: TreeHugger
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Id591a6cc621e8c0db52ac8df694d139cd273853a

Maciej Żenczykowski   commited 2025-07-28 15:36:16 -07:00
05da6b077d
NetBpfLoad: remove 'prefix' from pinProgs()
Test: TreeHugger
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I83922a5aa990fbbb6c5a6cf9412e437ca2669ff9

Maciej Żenczykowski   commited 2025-07-28 15:36:04 -07:00
f8e883658d
NetBpfLoad: remove 'prefix' from buildMapPinLoc()
Test: TreeHugger
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I23361e204e92d6323d91174c0882058f2477eb37

Maciej Żenczykowski   commited 2025-07-28 15:21:56 -07:00
586d462f55
NetBpfLoad: remove 'prefix' from pinMaps()
Test: TreeHugger
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Iff334320127de04261f58d065a656478b1216d12

Maciej Żenczykowski   commited 2025-07-28 15:21:56 -07:00
7ce493dd55
NetBpfLoad: remove 'prefix' from createMaps()
Test: TreeHugger
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: If41c62f8721fee5fa997684ebf60535e0e8b634b

Maciej Żenczykowski   commited 2025-07-28 15:21:56 -07:00
960c3372a0
NetBpfLoad: remove 'prefix' from loadProg()
Test: TreeHugger
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I8678bd27e5de720c49b33bacc25dc59d10354774

Maciej Żenczykowski   commited 2025-07-28 15:21:56 -07:00
12751c54fa
NetBpfLoad: remove 'prefix' from loadProgByLibbpf()
Test: TreeHugger,
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Id9e44b999ccfefce3586e94a24fef8758320215d

Maciej Żenczykowski   commited 2025-07-28 15:21:56 -07:00
ff3b418cf2
NetBpfLoad: remove 'prefix' from loadObject
Test: TreeHugger, atest bpf_existence_test
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I3495ac194c8cd3cbf9befefcc85237b8c5677ad1

Maciej Żenczykowski   commited 2025-07-28 15:21:56 -07:00
58464e6d5b
bpf: netd.c - use pindir instead of prefix
We continue to have:
  $ adbz shell ls -lZ /sys/fs/bpf/*/*_netd_*
  ----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_app_uid_stats_map
  ----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_blocked_ports_map
  -r--rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_configuration_map
  -rw-rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_shared:s0    0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_cookie_tag_map
  -r--rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_data_saver_enabled_map
  ----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_iface_index_name_map
  ----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_iface_stats_map
  ----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_ingress_discard_map
  ----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_local_net_access_map
  ----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_local_net_blocked_uid_map
  -rw-rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_shared:s0    0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_lock_array_test_map
  -rw-rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_shared:s0    0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_lock_hash_test_map
  ----rw---- 1 root system      u:object_r:fs_bpf_net_shared:s0     0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_packet_trace_enabled_map
  ----rw---- 1 root system      u:object_r:fs_bpf_net_shared:s0     0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_packet_trace_ringbuf
  ----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_sk_storage
  -r--rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_stats_map_A
  -r--rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_stats_map_B
  ----rw---- 1 root net_bw_acct u:object_r:fs_bpf_net_shared:s0     0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_uid_counterset_map
  -r--rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_uid_owner_map
  -r--rw---- 1 root net_bw_acct u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/map_netd_uid_permission_map
  -r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_bind4_inet4_bind
  -r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_bind6_inet6_bind
  -r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_cgroupskb_egress_stats
  -r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_cgroupskb_ingress_stats
  -r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_cgroupsock_inet_create
  -r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_cgroupsockrelease_inet_release
  -r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_connect4_inet4_connect
  -r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_connect6_inet6_connect
  -r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_getsockopt_prog
  -r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_recvmsg4_udp4_recvmsg
  -r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_recvmsg6_udp6_recvmsg
  -r--r----- 1 root net_admin   u:object_r:fs_bpf_net_shared:s0     0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_schedact_ingress_account
  -r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_sendmsg4_udp4_sendmsg
  -r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_sendmsg6_udp6_sendmsg
  -r--r----- 1 root root        u:object_r:fs_bpf_netd_readonly:s0  0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_setsockopt_prog
  -r--r----- 1 root net_admin   u:object_r:fs_bpf_netd_shared:s0    0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_skfilter_allowlist_xtbpf
  -r--r----- 1 root net_admin   u:object_r:fs_bpf_netd_shared:s0    0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_skfilter_denylist_xtbpf
  -r--r----- 1 root net_admin   u:object_r:fs_bpf_netd_shared:s0    0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_skfilter_egress_xtbpf
  -r--r----- 1 root net_admin   u:object_r:fs_bpf_netd_shared:s0    0 2025-07-28 14:43 /sys/fs/bpf/netd_shared/prog_netd_skfilter_ingress_xtbpf

Test: TreeHugger, atest bpf_existence_test
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I9b6e343e496b77092e18f54d0a9115ed88d0d711

Maciej Żenczykowski   commited 2025-07-28 15:21:56 -07:00
879752581f
bpf: offload.c - use pindir instead of prefix
We continue to have:
  $ adbz shell ls -lZ /sys/fs/bpf/*/*_offload_*
  -rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 14:39 /sys/fs/bpf/tethering/map_offload_tether_dev_map
  -rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 14:39 /sys/fs/bpf/tethering/map_offload_tether_downstream4_map
  -rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 14:39 /sys/fs/bpf/tethering/map_offload_tether_downstream64_map
  -rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 14:39 /sys/fs/bpf/tethering/map_offload_tether_downstream6_map
  -r--r----- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 14:39 /sys/fs/bpf/tethering/map_offload_tether_error_map
  -rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 14:39 /sys/fs/bpf/tethering/map_offload_tether_limit_map
  -rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 14:39 /sys/fs/bpf/tethering/map_offload_tether_stats_map
  -rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 14:39 /sys/fs/bpf/tethering/map_offload_tether_upstream4_map
  -rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 14:39 /sys/fs/bpf/tethering/map_offload_tether_upstream6_map
  -r--r----- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 14:39 /sys/fs/bpf/tethering/prog_offload_schedcls_tether_downstream4_ether
  -r--r----- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 14:39 /sys/fs/bpf/tethering/prog_offload_schedcls_tether_downstream4_rawip
  -r--r----- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 14:39 /sys/fs/bpf/tethering/prog_offload_schedcls_tether_downstream6_ether
  -r--r----- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 14:39 /sys/fs/bpf/tethering/prog_offload_schedcls_tether_downstream6_rawip
  -r--r----- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 14:39 /sys/fs/bpf/tethering/prog_offload_schedcls_tether_upstream4_ether
  -r--r----- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 14:39 /sys/fs/bpf/tethering/prog_offload_schedcls_tether_upstream4_rawip
  -r--r----- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 14:39 /sys/fs/bpf/tethering/prog_offload_schedcls_tether_upstream6_ether
  -r--r----- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 14:39 /sys/fs/bpf/tethering/prog_offload_schedcls_tether_upstream6_rawip

Test: TreeHugger
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Icba19a50fac5869fa5c7bc86c4b2450a8ede856f

Maciej Żenczykowski   commited 2025-07-28 15:21:56 -07:00
380449ed40
bpf: clatd.c - use pindir instead of prefix
We continue to have:
  $ adbz shell ls -lZ /sys/fs/bpf/*/*_clatd_*
  -rw-rw---- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-28 14:15 /sys/fs/bpf/net_shared/map_clatd_clat_egress4_map
  -rw-rw---- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-28 14:15 /sys/fs/bpf/net_shared/map_clatd_clat_ingress6_map
  -r--r----- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-28 14:15 /sys/fs/bpf/net_shared/prog_clatd_schedcls_egress4_clat_rawip
  -r--r----- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-28 14:15 /sys/fs/bpf/net_shared/prog_clatd_schedcls_ingress6_clat_ether
  -r--r----- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-28 14:15 /sys/fs/bpf/net_shared/prog_clatd_schedcls_ingress6_clat_rawip

Test: TreeHugger
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Id015d91f5e42acedea1ccf813334012f4b0f64ec

Maciej Żenczykowski   commited 2025-07-28 15:21:56 -07:00
6fba0348b6
bpf: dscpPolicy.c - use pindir instead of prefix
We continue to have:
  $ adbz shell ls -lZ /sys/fs/bpf/*/*_dscpPolicy_*
  -rw-rw---- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-28 14:05 /sys/fs/bpf/net_shared/map_dscpPolicy_ipv4_dscp_policies_map
  -rw-rw---- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-28 14:05 /sys/fs/bpf/net_shared/map_dscpPolicy_ipv6_dscp_policies_map
  ---------- 1 root root   u:object_r:fs_bpf_loader:s0      0 2025-07-28 14:05 /sys/fs/bpf/net_shared/map_dscpPolicy_socket_policy_cache_map
  -r--r----- 1 root system u:object_r:fs_bpf_net_shared:s0  0 2025-07-28 14:05 /sys/fs/bpf/net_shared/prog_dscpPolicy_schedcls_set_dscp_ether

Test: TreeHugger
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Ia69a48a73b1c9c8543c3e60c7ee9bbf3835eaba9

Maciej Żenczykowski   commited 2025-07-28 15:21:56 -07:00
4af4200968
bpf: test.c - use pindir instead of prefix
We continue to have:
  $ adbz shell ls -lZ /sys/fs/bpf/tethering/map_test_*
  -rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 13:46 /sys/fs/bpf/tethering/map_test_bitmap
  -rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 13:46 /sys/fs/bpf/tethering/map_test_tether2_downstream6_map
  -rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 13:46 /sys/fs/bpf/tethering/map_test_tether3_downstream6_map
  -rw-rw---- 1 root network_stack u:object_r:fs_bpf_tethering:s0  0 2025-07-28 13:46 /sys/fs/bpf/tethering/map_test_tether_downstream6_map

Long term goal here is to eliminate 'prefix' entirely.
This will also allow merging all the bpf .o's into 1.

Test: TreeHugger
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Ifdbc47243363e73ef46a9a9c71136f342fd381a7

Maciej Żenczykowski   commited 2025-07-28 15:21:56 -07:00
deed643567
bpf: mapDef - eliminate 'bool shared' field
Found mostly via:
  git grep 'shared_bool|PRIVATE'

Test: TreeHugger
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Ifa8098fe65c2b3278ad6e11191889f79ab7c3d57

Maciej Żenczykowski   commited 2025-07-28 15:21:56 -07:00
c1f92e5c7b
Revert "NetBpfLoad: abort if pin_subdir is specified"
This reverts commit 10979ef9ec.

Test: TreeHugger
Flag: EXEMPT mainline/noop
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I0a3e41c11c9f6b758b883ec93c12009b52a1a185

Maciej Żenczykowski   commited 2025-07-28 15:21:55 -07:00
12d1fa68f1
bpf: switch map/prog selinux_context field from storing 'fs_bpf_foo' to 'foo/'
This will eliminate the need for domain stuff.

After this:
  git grep fs_bpf_
finds nothing but comments.

Test: TreeHugger
Flag: EXEMPT no-op
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Ie834e9b2b120ee772690b28457c1ff080cb914dd

Maciej Żenczykowski   commited 2025-07-28 12:46:43 -07:00
868fc84bdf
bpf: eliminate BPF_SELINUX_CONTEXT_CHAR_ARRAY_SIZE, just use BPF_PIN_SUBDIR_CHAR_ARRAY_SIZE
After this:
  git grep BPF_SELINUX_CONTEXT_CHAR_ARRAY_SIZE
is now empty.

Test: TreeHugger
Flag: EXEMPT noop/mainline
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Idea02e689707f583795237cefe3947bd412cde5c

Maciej Żenczykowski   commited 2025-07-28 12:46:43 -07:00
07d1a89909
NetBpfLoad: Prevent libbpf log truncation
The liblog logger truncates messages over 1024 bytes, which was
cutting off kernel verifier logs.

This change bypasses the limit by splitting the log by newline
and logging each line individually.

Bug: 428792764
Flag: EXEMPT logging only change
Test: TH
Change-Id: I327c7e6d717b93bad0ef3e0e9b2e45a5208728ae

Motomu Utsumi   commited 2025-07-28 16:16:29 +09:00
47fcb86960
Merge "NetBpfLoad: suppress debug log if NETBPFLOAD_VERBOSE_LOG is not defined" into main
Treehugger Robot   authored and   Android (Google) Code Review   commited 2025-07-24 22:32:38 -07:00
e0d10b7cb1
Merge "NetBpfLoad: Allow loadObject to load BPF object by libbpf" into main
Maciej Żenczykowski   authored and   Android (Google) Code Review   commited 2025-07-24 21:48:11 -07:00
60b036cd4e
Merge "NetBpfLoad: Add method to load bpf object by libbpf" into main
Treehugger Robot   authored and   Android (Google) Code Review   commited 2025-07-24 21:32:45 -07:00
a635578b2d
Merge changes Ia7d6575d,Ifd66cda4,I8e29fcbd into main
* changes:
  NetBpfLoad: Add method to pin programs loaded by libbpf
  NetBpfLoad: Add method to pin maps loaded by libbpf
  NetBpfLoad: Update helper methods to use borrowed_fd

Treehugger Robot   authored and   Android (Google) Code Review   commited 2025-07-24 21:28:55 -07:00
3014baaf34
NetBpfLoad: suppress debug log if NETBPFLOAD_VERBOSE_LOG is not defined
Reduces ~900 lines of log spam by suppressing non-warning messages.
Verbose logging can be re-enabled for debugging by defining the
NETBPFLOAD_VERBOSE_LOG macro.

Bug: 428792764
Flag: EXEMPT logging only change
Test: TH
Change-Id: Ieac3e7ee843b889fb404a89cfe2319ec34ab365c

Motomu Utsumi   commited 2025-07-25 12:53:35 +09:00
a84eb0bc1e
NetBpfLoad: Allow loadObject to load BPF object by libbpf
Bug: 428792764
Flag: EXEMPT no-op
Test: TH
Test: ag/34714170

Change-Id: I70ad52c2df2fdbce1250b152444328daebb72be5

Motomu Utsumi   commited 2025-07-25 12:00:00 +09:00
e50e55dd32
NetBpfLoad: Add method to load bpf object by libbpf
Bug: 428792764
Flag: EXEMPT no-op
Test: TH
Change-Id: I3816a75147652b30e67edc26d1915e6e468cb993

Motomu Utsumi   commited 2025-07-25 12:00:00 +09:00
dbada87aee
NetBpfLoad: Add method to pin programs loaded by libbpf
Bug: 428792764
Flag: EXEMPT no-op
Test: TH
Change-Id: Ia7d6575dd9b79b41c247564d7d90a2c28711b21d

Motomu Utsumi   commited 2025-07-25 12:00:00 +09:00
5dbe65637d
NetBpfLoad: Add method to pin maps loaded by libbpf
Bug: 428792764
Flag: EXEMPT no-op
Test: TH
Change-Id: Ifd66cda409f738f721e370b884931627f70d0db7

Motomu Utsumi   commited 2025-07-25 12:00:00 +09:00
cd5bdf5382
NetBpfLoad: Update helper methods to use borrowed_fd
Bug: 428792764
Flag: EXEMPT no-op
Test: TH
Change-Id: I8e29fcbda75ec4c2fa6f2bb5dbd9da6cd44ed9c4

Motomu Utsumi   commited 2025-07-25 11:59:56 +09:00
52a3ba7f16
Merge "NetBpfLoad: Add method to prepare program load by libbpf" into main
Motomu Utsumi   authored and   Android (Google) Code Review   commited 2025-07-24 01:53:02 -07:00
d8ec55621a
Merge changes I74bb7895,Ib79e90f8,I4e66c712 into main
* changes:
  NetBpfLoad: Add method to prepare map load by libbpf
  NetBpfLoad: Extract building prog pin loc to a helper function
  NetBpfLoad: Extract building map pin loc to a helper function

Treehugger Robot   authored and   Android (Google) Code Review   commited 2025-07-24 00:45:20 -07:00
7e86ed2fb1
Merge "NetBpfLoad: Add program name to struct codeSection." into main
Maciej Żenczykowski   authored and   Android (Google) Code Review   commited 2025-07-23 23:09:12 -07:00
4fa9057b39
NetBpfLoad: Add method to prepare program load by libbpf
Bug: 428792764
Flag: EXEMPT no-op
Test: TH
Change-Id: Ia3666e4cd17100a5fd96a0d9da2b377f8fe9a26d

Motomu Utsumi   commited 2025-07-24 13:57:50 +09:00
3cdcc47382
NetBpfLoad: Add method to prepare map load by libbpf
Bug: 428792764
Flag: EXEMPT no-op
Test: TH
Change-Id: I74bb7895756df19be0d095269a490d3da54787bd

Motomu Utsumi   commited 2025-07-24 13:57:50 +09:00
f1b1afb341
NetBpfLoad: Extract building prog pin loc to a helper function
Bug: 428792764
Flag: EXEMPT no-op
Test: TH
Change-Id: Ib79e90f81fcfeb7767850a49b9f8bd7b9e475647

Motomu Utsumi   commited 2025-07-24 13:57:35 +09:00
f8977e924d
NetBpfLoad: Extract building map pin loc to a helper function
Bug: 428792764
Flag: EXEMPT no-op
Test: TH
Change-Id: I4e66c7127f210a2264b370e079c1fb7b44958886

Motomu Utsumi   commited 2025-07-24 13:08:34 +09:00
bf407f6bc4
NetBpfLoad: Add program name to struct codeSection.
Bug: 428792764
Flag: EXEMPT no-op
Test: TH
Change-Id: I3820e2464337778d7597cc4e1842fd0d8eb11045

Motomu Utsumi   commited 2025-07-23 12:04:50 +09:00
8645b6e0dc
Merge "NetBpfLoad: rename 'writeProcSysFile()' to 'writeFile()'" into main
Maciej Żenczykowski   authored and   Android (Google) Code Review   commited 2025-07-22 15:52:37 -07:00
21e92fabe8