Commit graph android_packages_modules_Co.../netbpfload/loader.cpp
Message SHA1
NetBpfLoad: prog names are only valid on 4.15+
The following commit is only in 4.15:

  commit cb4d2b3f03d8eed90be3a194e5b54b734ec4bbe9
  Author: Martin KaFai Lau <kafai@fb.com>
  Date:   Wed Sep 27 14:37:52 2017 -0700

    bpf: Add name, load_time, uid and map_ids to bpf_prog_info

  $ git describe cb4d2b3f03d8eed90be3a194e5b54b734ec4bbe9
  v4.14-rc1-661-gcb4d2b3f03d8

Bug: 335390828
Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I246a7a8640bea1e939f12f3ffd3fedc25a0a6422

Maciej Żenczykowski   commited 2024-04-23 03:16:05 +00:00
89efcc36e7
NetBpfLoad: map names are only valid on 4.15+
$ git checkout v4.14
HEAD is now at bebc6082da0a Linux 4.14

$ git grep map_name | egrep -v '^(arch|drivers|fs|include|samples|tools)/'

(nothing)

$ git checkout v4.15
HEAD is now at d8a5b80568a9 Linux 4.15

$ git co remotes/linux-$ git grep map_name | egrep -v '^(arch|drivers|fs|include|samples|tools)/'
kernel/bpf/syscall.c:381:#define BPF_MAP_CREATE_LAST_FIELD map_name
kernel/bpf/syscall.c:408:	err = bpf_obj_name_cpy(map->name, attr->map_name);

  commit ad5b177bd73f5107d97c36f56395c4281fb6f089
  Author: Martin KaFai Lau <kafai@fb.com>
  Date:   Wed Sep 27 14:37:53 2017 -0700

    bpf: Add map_name to bpf_map_info

  $ git describe ad5b177bd73f5
  v4.14-rc1-662-gad5b177bd73f

Bug: 335390828
Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I74f8ac8bbf78184a06b3ce005d0bb520b1d1feeb

Maciej Żenczykowski   commited 2024-04-22 23:42:10 +00:00
d0bb172371
NetBpfLoad: consistently use logging tag of 'NetBpfLoad'
instead of using 'NetBpfLoad' from NetBpfLoad.cpp
and 'NetBpfLoader' from loader.cpp

This will make it easier to filter logcat.

Test: N/A
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Ibd4e0b04592e8b41cde651c5596ce84bd8893c19

Maciej Żenczykowski   commited 2024-04-20 00:03:19 +00:00
3d14144698
NetBpfLoad: add a few more consts for safety
Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I4f59ec295b34d6942732bb5f636699385e998bba

Maciej Żenczykowski   commited 2024-03-18 22:28:25 -07:00
a2706bf76c
NetBpfLoad - change BPFLOADER_VERSION macro into an argument
(in preparation for this being run-time dynamic)

Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Icac8d1afdd3d55b80c232dd5a124a79a9063f350

Maciej Żenczykowski   commited 2024-03-18 14:40:08 -07:00
221b248c6e
NetBpfLoad: more 4.9-T support
(older kernels don't support naming maps/programs)

Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: If59b8947021394e1ce0a91326fee4272a5bddd38

Maciej Żenczykowski   commited 2024-03-15 23:32:27 +00:00
22836357ec
Eliminate spurious COMPILE_FOR_BPFLOADER_VERSION macro
and make platform bpf.o's target V's platform bpfloader.

Note that all mainline shipped bpf.o's already manually
specify BPFLOADER_MIN_VER.

Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I67b73969def24e1e169c70c5fb1a402bf6e8cabc

Maciej Żenczykowski   commited 2024-03-15 18:14:16 +00:00
0de80f1a9f
netbpfload: add back support for 4.9-T kernels
This effectively reverts aosp/2268766

Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I42da5c56fe4b69635b9678ff57ade7788c17f7c8

Maciej Żenczykowski   commited 2024-03-11 12:40:33 +00:00
7e5b09a37e
NetBpfLoad: remove support for 'old' formats
cannot happen as it only loads mainline code
that it was built (and tested) along side of.

ie. a failure here would cause a TH boot failure.

Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Ia350deb10b4e40c9f4f01ea140a0bf97db508086

Maciej Żenczykowski   commited 2024-03-08 19:31:17 +00:00
60414671ec
NetBpfLoad: bump version to 0.42
(this may well be the last version bump ever)

To get mainline version > any existing platform version.

Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I20c5dc515b0f94fae2c2fb6f45b6b8907fe7506e

Maciej Żenczykowski   commited 2024-03-08 08:00:48 +00:00
59fb77f8bf
netbpfload: remove support for limiting selinux contexts
No need for this, as we simply only support those selinux
contexts (and directories) which are available to networking.

Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I35b134c57411f82514b9f7148411f83d3aee1927

Maciej Żenczykowski   commited 2023-10-10 03:46:06 -07:00
af07d6db1f
Use libbase properties for a slight simplification.
Test: treehugger
Change-Id: If699230d0bf71ce521d7175da707e42b78ae4886

Elliott Hughes   authored and   Maciej Żenczykowski   commited 2023-10-09 23:57:48 +00:00
497e3e05a5
netbpfload: remove support for limiting program types
No need for this, as we simply only support network
program types in the first place.

Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I163e21fd4d4089882cf37fc68bc4299003b514d7

Maciej Żenczykowski   commited 2023-10-09 00:32:36 -07:00
fcea70f840
netbpfload: remove non-network program types
We are unlikely to ever be willing to load these
program types from mainline, as it is simply too dangerous.

Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I1b0943d39b8131699f4606e8d165f3c944d453ed

Maciej Żenczykowski   commited 2023-10-09 00:32:31 -07:00
02519f86ad
netbpfload: add Android.bp file
Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I3af8e7f14de8dd5dd65c40705195332bef114b88

Maciej Żenczykowski   commited 2023-10-09 00:32:26 -07:00
40dfe53313
netbpfload: update date in copyright messages, LOG_TAGs, etc.
Test: N/A
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I8f83d04266caf930701b9725b457333ddae149f2

Maciej Żenczykowski   commited 2023-10-02 22:40:38 -07:00
283c25a07a
netbpfload: remove support for 'loader'
Test: N/A
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I3d6a6a072cc958c3cb8f49d747a6c6812b37cef5

Maciej Żenczykowski   commited 2023-10-02 22:35:38 -07:00
354ded3926
netbpfload: remove support for 'vendor'
Test: N/A
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: If088188b4832d37b084846b5ad3db06b8858d856

Maciej Żenczykowski   commited 2023-10-02 22:35:24 -07:00
d6395205bb
netbpfload: remove support for 'platform'
Test: N/A
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Ia0c1f55aa78435737699e0dec0bfddbd977e7392

Maciej Żenczykowski   commited 2023-10-02 22:35:03 -07:00
0e4802df20
import bpfloader into p/m/C
These are unmodified files, without history.
Getting these to do something useful will come later.

Generated via:
  cp //system/bpf/bpfloader/bpfloader.rc netbpfload.rc
  cp //system/bpf/bpfloader/BpfLoader.cpp NetBpfLoad.cpp
  cp //system/bpf/libbpf_android/include/libbpf_android.h loader.h
  cp //system/bpf/libbpf_android/Loader.cpp loader.cpp

Change-Id: I1677b899a51e1289a7a9806d6f5c34450b9e7c47

Maciej Żenczykowski   commited 2023-10-02 14:59:10 -07:00
60c159f233