Merge "Measure total time in state"
diff --git a/libbpf_android/Android.bp b/libbpf_android/Android.bp
index 507ca18..93dc7c1 100644
--- a/libbpf_android/Android.bp
+++ b/libbpf_android/Android.bp
@@ -25,6 +25,7 @@
enabled: true,
},
},
+ sdk_version: "30",
}
cc_library {
diff --git a/libbpf_android/BpfLoadTest.cpp b/libbpf_android/BpfLoadTest.cpp
index b384c11..09cd36c 100644
--- a/libbpf_android/BpfLoadTest.cpp
+++ b/libbpf_android/BpfLoadTest.cpp
@@ -38,8 +38,6 @@
int mProgFd;
void SetUp() {
- SKIP_IF_BPF_NOT_SUPPORTED;
-
unlink(tp_prog_path);
unlink(tp_map_path);
@@ -55,8 +53,6 @@
}
void TearDown() {
- SKIP_IF_BPF_NOT_SUPPORTED;
-
close(mProgFd);
unlink(tp_prog_path);
unlink(tp_map_path);
@@ -88,8 +84,6 @@
};
TEST_F(BpfLoadTest, bpfCheckMap) {
- SKIP_IF_BPF_NOT_SUPPORTED;
-
checkMapNonZero();
}
diff --git a/libbpf_android/BpfMapTest.cpp b/libbpf_android/BpfMapTest.cpp
index 91b9bf3..d0737b0 100644
--- a/libbpf_android/BpfMapTest.cpp
+++ b/libbpf_android/BpfMapTest.cpp
@@ -54,8 +54,6 @@
BpfMapTest() {}
void SetUp() {
- SKIP_IF_BPF_NOT_SUPPORTED;
-
EXPECT_EQ(0, setrlimitForTest());
if (!access(PINNED_MAP_PATH, R_OK)) {
EXPECT_EQ(0, remove(PINNED_MAP_PATH));
@@ -63,8 +61,6 @@
}
void TearDown() {
- SKIP_IF_BPF_NOT_SUPPORTED;
-
if (!access(PINNED_MAP_PATH, R_OK)) {
EXPECT_EQ(0, remove(PINNED_MAP_PATH));
}
@@ -107,8 +103,6 @@
};
TEST_F(BpfMapTest, constructor) {
- SKIP_IF_BPF_NOT_SUPPORTED;
-
BpfMap<uint32_t, uint32_t> testMap1;
checkMapInvalid(testMap1);
@@ -117,8 +111,6 @@
}
TEST_F(BpfMapTest, basicHelpers) {
- SKIP_IF_BPF_NOT_SUPPORTED;
-
BpfMap<uint32_t, uint32_t> testMap(BPF_MAP_TYPE_HASH, TEST_MAP_SIZE, BPF_F_NO_PREALLOC);
uint32_t key = TEST_KEY1;
uint32_t value_write = TEST_VALUE1;
@@ -133,8 +125,6 @@
}
TEST_F(BpfMapTest, reset) {
- SKIP_IF_BPF_NOT_SUPPORTED;
-
BpfMap<uint32_t, uint32_t> testMap(BPF_MAP_TYPE_HASH, TEST_MAP_SIZE, BPF_F_NO_PREALLOC);
uint32_t key = TEST_KEY1;
uint32_t value_write = TEST_VALUE1;
@@ -147,8 +137,6 @@
}
TEST_F(BpfMapTest, moveConstructor) {
- SKIP_IF_BPF_NOT_SUPPORTED;
-
BpfMap<uint32_t, uint32_t> testMap1(BPF_MAP_TYPE_HASH, TEST_MAP_SIZE, BPF_F_NO_PREALLOC);
BpfMap<uint32_t, uint32_t> testMap2;
testMap2 = std::move(testMap1);
@@ -159,8 +147,6 @@
}
TEST_F(BpfMapTest, SetUpMap) {
- SKIP_IF_BPF_NOT_SUPPORTED;
-
EXPECT_NE(0, access(PINNED_MAP_PATH, R_OK));
BpfMap<uint32_t, uint32_t> testMap1(BPF_MAP_TYPE_HASH, TEST_MAP_SIZE, BPF_F_NO_PREALLOC);
ASSERT_EQ(0, bpfFdPin(testMap1.getMap(), PINNED_MAP_PATH));
@@ -177,8 +163,6 @@
}
TEST_F(BpfMapTest, iterate) {
- SKIP_IF_BPF_NOT_SUPPORTED;
-
BpfMap<uint32_t, uint32_t> testMap(BPF_MAP_TYPE_HASH, TEST_MAP_SIZE, BPF_F_NO_PREALLOC);
populateMap(TEST_MAP_SIZE, testMap);
int totalCount = 0;
@@ -197,8 +181,6 @@
}
TEST_F(BpfMapTest, iterateWithValue) {
- SKIP_IF_BPF_NOT_SUPPORTED;
-
BpfMap<uint32_t, uint32_t> testMap(BPF_MAP_TYPE_HASH, TEST_MAP_SIZE, BPF_F_NO_PREALLOC);
populateMap(TEST_MAP_SIZE, testMap);
int totalCount = 0;
@@ -219,8 +201,6 @@
}
TEST_F(BpfMapTest, mapIsEmpty) {
- SKIP_IF_BPF_NOT_SUPPORTED;
-
BpfMap<uint32_t, uint32_t> testMap(BPF_MAP_TYPE_HASH, TEST_MAP_SIZE, BPF_F_NO_PREALLOC);
expectMapEmpty(testMap);
uint32_t key = TEST_KEY1;
@@ -251,8 +231,6 @@
}
TEST_F(BpfMapTest, mapClear) {
- SKIP_IF_BPF_NOT_SUPPORTED;
-
BpfMap<uint32_t, uint32_t> testMap(BPF_MAP_TYPE_HASH, TEST_MAP_SIZE, BPF_F_NO_PREALLOC);
populateMap(TEST_MAP_SIZE, testMap);
Result<bool> isEmpty = testMap.isEmpty();
diff --git a/libbpf_android/Loader.cpp b/libbpf_android/Loader.cpp
index 47e6c67..8a66c29 100644
--- a/libbpf_android/Loader.cpp
+++ b/libbpf_android/Loader.cpp
@@ -73,15 +73,16 @@
* is the name of the program, and tracepoint is the type.
*/
sectionType sectionNameTypes[] = {
- {"kprobe", BPF_PROG_TYPE_KPROBE},
- {"tracepoint", BPF_PROG_TYPE_TRACEPOINT},
- {"skfilter", BPF_PROG_TYPE_SOCKET_FILTER},
- {"cgroupskb", BPF_PROG_TYPE_CGROUP_SKB},
- {"schedcls", BPF_PROG_TYPE_SCHED_CLS},
- {"cgroupsock", BPF_PROG_TYPE_CGROUP_SOCK},
+ {"kprobe", BPF_PROG_TYPE_KPROBE},
+ {"tracepoint", BPF_PROG_TYPE_TRACEPOINT},
+ {"skfilter", BPF_PROG_TYPE_SOCKET_FILTER},
+ {"cgroupskb", BPF_PROG_TYPE_CGROUP_SKB},
+ {"schedcls", BPF_PROG_TYPE_SCHED_CLS},
+ {"cgroupsock", BPF_PROG_TYPE_CGROUP_SOCK},
+ {"xdp", BPF_PROG_TYPE_XDP},
- /* End of table */
- {"END", BPF_PROG_TYPE_UNSPEC},
+ /* End of table */
+ {"END", BPF_PROG_TYPE_UNSPEC},
};
typedef struct {