Home
last modified time | relevance | path

Searched refs:bpf (Results 1 – 25 of 140) sorted by relevance

123456

/aosp12/build/soong/bpf/
H A Dbpf.go15 package bpf package
65 type bpf struct { struct
73 func (bpf *bpf) GenerateAndroidBuildActions(ctx android.ModuleContext) {
96 cflags = append(cflags, bpf.properties.Cflags...)
113 bpf.objs = append(bpf.objs, obj.WithoutRel())
117 func (bpf *bpf) AndroidMk() android.AndroidMkData {
124 for _, obj := range bpf.objs {
148 func (bpf *bpf) OutputFiles(tag string) (android.Paths, error) {
151 return bpf.objs, nil
157 var _ android.OutputFileProducer = (*bpf)(nil)
[all …]
H A DAndroid.bp22 name: "soong-bpf",
23 pkgPath: "android/soong/bpf",
32 "bpf.go",
/aosp12/system/sepolicy/prebuilts/api/28.0/private/
H A Dbpfloader.te1 # bpf program loader
6 # Process need CAP_NET_ADMIN to run bpf programs as cgroup filter
11 # These permission is required for pin bpf program for netd.
18 # Use pinned bpf map files from netd.
19 allow bpfloader netd:bpf { map_read map_write };
20 allow bpfloader self:bpf { prog_load prog_run };
23 neverallow { domain -bpfloader } *:bpf prog_load;
24 neverallow { domain -bpfloader -netd -netutils_wrapper} *:bpf prog_run;
27 # only system_server, netd and bpfloader can read/write the bpf maps
28 neverallow { domain -system_server -netd -bpfloader} netd:bpf { map_read map_write };
/aosp12/frameworks/libs/net/common/native/bpf_syscall_wrappers/include/
H A DBpfSyscallWrappers.h34 namespace bpf {
41 inline int bpf(int cmd, const bpf_attr& attr) { in bpf() function
47 return bpf(BPF_MAP_CREATE, { in createMap()
58 return bpf(BPF_MAP_UPDATE_ELEM, { in writeToMapEntry()
67 return bpf(BPF_MAP_LOOKUP_ELEM, { in findMapEntry()
75 return bpf(BPF_MAP_DELETE_ELEM, { in deleteMapEntry()
82 return bpf(BPF_MAP_GET_NEXT_KEY, { in getNextMapKey()
94 return bpf(BPF_OBJ_PIN, { in bpfFdPin()
101 return bpf(BPF_OBJ_GET, { in bpfFdGet()
129 return bpf(BPF_PROG_ATTACH, { in attachProgram()
[all …]
/aosp12/bionic/libc/tools/
H A Dtest_genseccomp.py28 bpf = genseccomp.convert_to_intermediate_bpf(ranges)
29 self.assertEqual(bpf, ['BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 3, {fail}, {allow}), //a|b'])
32 bpf = genseccomp.convert_to_intermediate_bpf(ranges)
33 self.assertEqual(bpf, ['BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 3, 1, 0),',
39 bpf = genseccomp.convert_ranges_to_bpf(ranges, priority_syscalls=[])
40 self.assertEqual(bpf, ['BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 1, 0, 2),',
45 bpf = genseccomp.convert_ranges_to_bpf(ranges, priority_syscalls=[])
46 self.assertEqual(bpf, ['BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 1, 0, 4),',
H A Dgenseccomp.py180 bpf = convert_priority_to_intermediate_bpf(priority_syscalls) + \
185 for i, statement in enumerate(bpf):
192 bpf[i] = statement.format(fail=str(len(bpf) - i),
193 allow=str(len(bpf) - i - 1))
198 bpf.append(BPF_ALLOW + ",")
201 bpf.insert(0, BPF_JGE.format(ranges[0].begin, 0, str(len(bpf))) + ',')
202 return bpf
205 def convert_bpf_to_output(bpf, architecture, name_modifier): argument
227 return header + "\n".join(bpf) + footer
234 bpf = convert_ranges_to_bpf(ranges, priority_syscalls)
[all …]
/aosp12/system/sepolicy/prebuilts/api/29.0/private/
H A Dbpfloader.te1 # bpf program loader
6 # These permission is required for pin bpf program for netd.
11 # Allow bpfloader to create bpf maps and programs. The map_read and map_write permission is needed
13 allow bpfloader self:bpf { prog_load prog_run map_read map_write map_create };
20 neverallow { domain -bpfloader } *:bpf { map_create prog_load };
21 neverallow { domain -bpfloader -netd -netutils_wrapper } *:bpf prog_run;
24 # only system_server, netd and bpfloader can read/write the bpf maps
25 neverallow { domain -system_server -netd -bpfloader} *:bpf { map_read map_write };
/aosp12/system/bpf/libbpf_android/include/bpf/
H A DBpfUtils.h30 namespace bpf {
50 if (android::bpf::isAtLeastKernelVersion(4, 9, 0)) { \
58 if (!android::bpf::isAtLeastKernelVersion(4, 9, 0)) { \
66 if (!android::bpf::isAtLeastKernelVersion(4, 14, 0)) { \
75 if (!android::bpf::isAtLeastKernelVersion(5, 9, 0)) { \
/aosp12/system/sepolicy/prebuilts/api/30.0/private/
H A Dbpfloader.te1 # bpf program loader
10 # Allow bpfloader to create bpf maps and programs.
11 allow bpfloader self:bpf { map_create map_read map_write prog_load prog_run };
29 neverallow { domain -bpfloader } *:bpf { map_create prog_load };
30 neverallow { domain -bpfloader -netd -netutils_wrapper -system_server } *:bpf prog_run;
31 neverallow { domain -bpfloader -netd -system_server } *:bpf { map_read map_write };
/aosp12/system/sepolicy/prebuilts/api/31.0/private/
H A Dbpfloader.te1 # bpf program loader
11 # Allow bpfloader to create bpf maps and programs.
12 allow bpfloader self:bpf { map_create map_read map_write prog_load prog_run };
34 neverallow { domain -bpfloader } *:bpf { map_create prog_load };
35 …main -bpfloader -gpuservice -netd -netutils_wrapper -network_stack -system_server } *:bpf prog_run;
36 neverallow { domain -bpfloader -gpuservice -lmkd -netd -network_stack -system_server } *:bpf { map_…
H A Dgpuservice.te48 # Needed for reading tracepoint ids in order to attach bpf programs.
53 # Needed for interact with bpf fs.
57 # Needed for enable the bpf program and read the map.
58 allow gpuservice bpfloader:bpf { map_read prog_run };
60 # Needed for getting a prop to ensure bpf programs loaded.
/aosp12/system/sepolicy/prebuilts/api/32.0/private/
H A Dbpfloader.te1 # bpf program loader
11 # Allow bpfloader to create bpf maps and programs.
12 allow bpfloader self:bpf { map_create map_read map_write prog_load prog_run };
34 neverallow { domain -bpfloader } *:bpf { map_create prog_load };
35 …main -bpfloader -gpuservice -netd -netutils_wrapper -network_stack -system_server } *:bpf prog_run;
36 neverallow { domain -bpfloader -gpuservice -lmkd -netd -network_stack -system_server } *:bpf { map_…
H A Dgpuservice.te48 # Needed for reading tracepoint ids in order to attach bpf programs.
53 # Needed for interact with bpf fs.
57 # Needed for enable the bpf program and read the map.
58 allow gpuservice bpfloader:bpf { map_read prog_run };
60 # Needed for getting a prop to ensure bpf programs loaded.
/aosp12/system/sepolicy/private/
H A Dbpfloader.te1 # bpf program loader
11 # Allow bpfloader to create bpf maps and programs.
12 allow bpfloader self:bpf { map_create map_read map_write prog_load prog_run };
34 neverallow { domain -bpfloader } *:bpf { map_create prog_load };
35 …main -bpfloader -gpuservice -netd -netutils_wrapper -network_stack -system_server } *:bpf prog_run;
36 neverallow { domain -bpfloader -gpuservice -lmkd -netd -network_stack -system_server } *:bpf { map_…
H A Dgpuservice.te48 # Needed for reading tracepoint ids in order to attach bpf programs.
53 # Needed for interact with bpf fs.
57 # Needed for enable the bpf program and read the map.
58 allow gpuservice bpfloader:bpf { map_read prog_run };
60 # Needed for getting a prop to ensure bpf programs loaded.
/aosp12/packages/modules/Connectivity/Tethering/jni/
H A Dcom_android_networkstack_tethering_BpfMap.cpp72 jint fd = bpf::bpfFdGet(pathname.c_str(), static_cast<unsigned>(mode)); in com_android_networkstack_tethering_BpfMap_bpfFdGet()
82 int ret = bpf::writeToMapEntry(static_cast<int>(fd), keyRO.get(), valueRO.get(), in com_android_networkstack_tethering_BpfMap_writeToMapEntry()
101 int ret = bpf::deleteMapEntry(static_cast<int>(fd), keyRO.get()); in com_android_networkstack_tethering_BpfMap_deleteMapEntry()
116 ret = bpf::getNextMapKey(static_cast<int>(fd), nullptr, nextKeyRW.get()); in com_android_networkstack_tethering_BpfMap_getNextMapKey()
119 ret = bpf::getNextMapKey(static_cast<int>(fd), keyRO.get(), nextKeyRW.get()); in com_android_networkstack_tethering_BpfMap_getNextMapKey()
132 int ret = bpf::findMapEntry(static_cast<int>(fd), keyRO.get(), valueRW.get()); in com_android_networkstack_tethering_BpfMap_findMapEntry()
/aosp12/frameworks/base/core/jni/
H A Dcom_android_internal_os_KernelCpuBpfTracking.cpp24 return android::bpf::isTrackingUidTimesSupported() ? JNI_TRUE : JNI_FALSE; in KernelCpuBpfTracking_isSupported()
28 return android::bpf::startTrackingUidTimes(); in KernelCpuBpfTracking_startTrackingInternal()
32 auto freqs = android::bpf::getCpuFreqs(); in KernelCpuBpfTracking_getFreqsInternal()
47 auto freqs = android::bpf::getCpuFreqs(); in KernelCpuBpfTracking_getFreqsClustersInternal()
H A Dcom_android_internal_os_KernelCpuUidBpfMapReader.cpp59 if (!android::bpf::clearUidTimes(uid)) return false; in KernelCpuUidFreqTimeBpfMapReader_removeUidRange()
69 auto data = android::bpf::getUidsUpdatedCpuFreqTimes(&newLastUpdate); in KernelCpuUidFreqTimeBpfMapReader_readBpfData()
95 auto data = android::bpf::getUidsUpdatedConcurrentTimes(&newLastUpdate); in KernelCpuUidActiveTimeBpfMapReader_readBpfData()
128 auto data = android::bpf::getUidsUpdatedConcurrentTimes(&newLastUpdate); in KernelCpuUidClusterTimeBpfMapReader_readBpfData()
145 auto times = android::bpf::getUidConcurrentTimes(0); in KernelCpuUidClusterTimeBpfMapReader_getDataDimensions()
/aosp12/system/netd/server/
H A DOffloadUtils.h51 const int fd = bpf::mapRetrieveRW(CLAT_EGRESS4_MAP_PATH); in getClatEgress4MapFd()
56 const int fd = bpf::retrieveProgram(with_ethernet_header ? CLAT_EGRESS4_PROG_ETHER_PATH in getClatEgress4ProgFd()
62 const int fd = bpf::mapRetrieveRW(CLAT_INGRESS6_MAP_PATH); in getClatIngress6MapFd()
67 const int fd = bpf::retrieveProgram(with_ethernet_header ? CLAT_INGRESS6_PROG_ETHER_PATH in getClatIngress6ProgFd()
/aosp12/packages/modules/NetworkStack/tests/unit/jni/
H A Dapf_jni.cpp105 bpf_program bpf; in com_android_server_ApfTest_compileToBpf() local
106 if (pcap_compile(pcap.get(), &bpf, filter.c_str(), 0, PCAP_NETMASK_UNKNOWN)) { in com_android_server_ApfTest_compileToBpf()
112 const struct bpf_insn* insn = bpf.bf_insns; in com_android_server_ApfTest_compileToBpf()
113 for (uint32_t i = 0; i < bpf.bf_len; i++) { in com_android_server_ApfTest_compileToBpf()
145 bpf_program bpf; in com_android_server_ApfTest_compareBpfApf() local
146 if (pcap_compile(bpf_pcap.get(), &bpf, filter.c_str(), 0, PCAP_NETMASK_UNKNOWN)) { in com_android_server_ApfTest_compareBpfApf()
152 if (pcap_setfilter(bpf_pcap.get(), &bpf)) { in com_android_server_ApfTest_compareBpfApf()
/aosp12/system/bpf/libbpf_android/
H A DBpfLoadTest.cpp33 namespace bpf { namespace
45 EXPECT_EQ(android::bpf::loadProg("/system/etc/bpf/bpf_load_tp_prog.o", &critical), 0); in SetUp()
64 android::bpf::BpfMap<uint32_t, uint32_t> m(tp_map_path); in checkMapNonZero()
/aosp12/frameworks/native/services/gpuservice/gpumem/
H A DGpuMem.cpp44 bpf::waitForProgsLoaded(); in initialize()
47 int fd = bpf::retrieveProgram(kGpuMemTotalProgPath); in initialize()
69 auto map = bpf::BpfMapRO<uint64_t, uint64_t>(kGpuMemTotalMapPath); in initialize()
80 void GpuMem::setGpuMemTotalMap(bpf::BpfMap<uint64_t, uint64_t>& map) { in setGpuMemTotalMap()
/aosp12/packages/modules/Connectivity/Tethering/bpf_progs/
H A DAndroid.bp42 // bpf kernel programs
44 bpf {
53 bpf {
/aosp12/system/netd/bpf_progs/
H A DAndroid.bp32 // bpf kernel programs
34 bpf {
47 bpf {
/aosp12/system/bpf/bpfloader/
H A Dbpfloader.rc4 # will just block until bpfloader finishes and sets the bpf.progs_loaded property.
7 # - /sys/fs/bpf is already mounted,
8 # - apex (incl. rollback) is initialized (so that in the future we can load bpf
51 # capability is not even checked by the kernel's bpf system call.
58 # we're not really updatable, but want to be able to load bpf programs shipped in apexes

123456