Name | Date | Size | #Lines | LOC | ||
---|---|---|---|---|---|---|
.. | - | - | ||||
README.txt | D | 15-Dec-2024 | 3.5 KiB | 63 | 49 | |
bpfloader-sdk30-11-R.rc | D | 15-Dec-2024 | 322 | 12 | 10 | |
bpfloader-sdk31-12-S.rc | D | 15-Dec-2024 | 337 | 12 | 10 | |
bpfloader-sdk33-13-T.rc | D | 15-Dec-2024 | 392 | 13 | 11 | |
bpfloader-sdk34-14-U-QPR2.rc | D | 15-Dec-2024 | 346 | 12 | 10 | |
bpfloader-sdk34-14-U.rc | D | 15-Dec-2024 | 345 | 12 | 10 |
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