• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..--

README.txtD15-Dec-20243.5 KiB6349

bpfloader-sdk30-11-R.rcD15-Dec-2024322 1210

bpfloader-sdk31-12-S.rcD15-Dec-2024337 1210

bpfloader-sdk33-13-T.rcD15-Dec-2024392 1311

bpfloader-sdk34-14-U-QPR2.rcD15-Dec-2024346 1210

bpfloader-sdk34-14-U.rcD15-Dec-2024345 1210

README.txt

1This directory contains comment stripped versions of
2  //system/bpf/bpfloader/bpfloader.rc
3from previous versions of Android.
4
5Generated via:
6  (cd ../../../../../system/bpf && git cat-file -p remotes/aosp/android11-release:bpfloader/bpfloader.rc; ) | egrep -v '^ *#' > bpfloader-sdk30-11-R.rc
7  (cd ../../../../../system/bpf && git cat-file -p remotes/aosp/android12-release:bpfloader/bpfloader.rc; ) | egrep -v '^ *#' > bpfloader-sdk31-12-S.rc
8  (cd ../../../../../system/bpf && git cat-file -p remotes/aosp/android13-release:bpfloader/bpfloader.rc; ) | egrep -v '^ *#' > bpfloader-sdk33-13-T.rc
9  (cd ../../../../../system/bpf && git cat-file -p remotes/aosp/android14-release:bpfloader/bpfloader.rc; ) | egrep -v '^ *#' > bpfloader-sdk34-14-U.rc
10  (cd ../../../../../system/bpf && git cat-file -p remotes/aosp/main:bpfloader/bpfloader.rc;              ) | egrep -v '^ *#' > bpfloader-sdk34-14-U-QPR2.rc
11
12this is entirely equivalent to:
13  (cd /android1/system/bpf && git cat-file -p remotes/goog/rvc-dev:bpfloader/bpfloader.rc; ) | egrep -v '^ *#' > bpfloader-sdk30-11-R.rc
14  (cd /android1/system/bpf && git cat-file -p remotes/goog/sc-dev:bpfloader/bpfloader.rc;  ) | egrep -v '^ *#' > bpfloader-sdk31-12-S.rc
15  (cd /android1/system/bpf && git cat-file -p remotes/goog/tm-dev:bpfloader/bpfloader.rc;  ) | egrep -v '^ *#' > bpfloader-sdk33-13-T.rc
16  (cd /android1/system/bpf && git cat-file -p remotes/goog/udc-dev:bpfloader/bpfloader.rc; ) | egrep -v '^ *#' > bpfloader-sdk34-14-U.rc
17  (cd /android1/system/bpf && git cat-file -p remotes/goog/main:bpfloader/bpfloader.rc;    ) | egrep -v '^ *#' > bpfloader-sdk34-14-U-QPR2.rc
18
19it is also equivalent to:
20  (cd /android1/system/bpf && git cat-file -p remotes/goog/rvc-qpr-dev:bpfloader/bpfloader.rc; ) | egrep -v '^ *#' > bpfloader-sdk30-11-R.rc
21  (cd /android1/system/bpf && git cat-file -p remotes/goog/sc-v2-dev:bpfloader/bpfloader.rc;   ) | egrep -v '^ *#' > bpfloader-sdk31-12-S.rc
22  (cd /android1/system/bpf && git cat-file -p remotes/goog/tm-qpr-dev:bpfloader/bpfloader.rc;  ) | egrep -v '^ *#' > bpfloader-sdk33-13-T.rc
23  (cd /android1/system/bpf && git cat-file -p remotes/goog/udc-qpr-dev:bpfloader/bpfloader.rc; ) | egrep -v '^ *#' > bpfloader-sdk34-14-U.rc
24
25ie. there were no changes between R/S/T and R/S/T QPR3, and no change between U and U QPR1.
26
27Note: Sv2 sdk/api level is actually 32, it just didn't change anything wrt. bpf, so doesn't matter.
28
29
30Key takeaways:
31
32= R bpfloader:
33  - CHOWN + SYS_ADMIN
34  - asynchronous startup
35  - platform only
36  - proc file setup handled by initrc
37
38= S bpfloader
39  - adds NET_ADMIN
40  - synchronous startup
41  - platform + mainline tethering offload
42
43= T bpfloader
44  - platform + mainline networking (including tethering offload)
45  - supported btf for maps via exec of btfloader
46
47= U bpfloader
48  - proc file setup moved into bpfloader binary
49  - explicitly specified user and groups:
50    group root graphics network_stack net_admin net_bw_acct net_bw_stats net_raw system
51    user root
52
53= U QPR2 bpfloader
54  - drops support of btf for maps
55  - invocation of /system/bin/netbpfload binary, which after handling *all*
56    networking bpf related things executes the platform /system/bin/bpfloader
57    which handles non-networking bpf.
58
59Note that there is now a copy of 'netbpfload' provided by the tethering apex
60mainline module at /apex/com.android.tethering/bin/netbpfload, which due
61to the use of execve("/system/bin/bpfloader") relies on T+ selinux which was
62added for btf map support (specifically the ability to exec the "btfloader").
63