@@ -563,11 +563,7 @@ static void test_sockmap(int tasks, void *data)
/* Test update without programs */
for (i = 0; i < 6; i++) {
err = bpf_map_update_elem(fd, &i, &sfd[i], BPF_ANY);
- if (i < 2 && !err) {
- printf("Allowed update sockmap '%i:%i' not in ESTABLISHED\n",
- i, sfd[i]);
- goto out_sockmap;
- } else if (i >= 2 && err) {
+ if (err) {
printf("Failed noprog update sockmap '%i:%i'\n",
i, sfd[i]);
goto out_sockmap;
@@ -691,7 +687,7 @@ static void test_sockmap(int tasks, void *data)
}
/* Test map update elem afterwards fd lives in fd and map_fd */
- for (i = 2; i < 6; i++) {
+ for (i = 0; i < 6; i++) {
err = bpf_map_update_elem(map_fd_rx, &i, &sfd[i], BPF_ANY);
if (err) {
printf("Failed map_fd_rx update sockmap %i '%i:%i'\n",
@@ -787,7 +783,7 @@ static void test_sockmap(int tasks, void *data)
}
/* Delete the elems without programs */
- for (i = 2; i < 6; i++) {
+ for (i = 0; i < 6; i++) {
err = bpf_map_delete_elem(fd, &i);
if (err) {
printf("Failed delete sockmap %i '%i:%i'\n",
BugLink: https://bugs.launchpad.net/bugs/1839912 This reverts commit da8fdf4717bf4e40143115be8799ca0dd2688e8d. This is upstream commit 5028027844cfc6168e39650abecd817ba64c9d98. That commit fixes 1aa12bdf1bfb ("bpf: sockmap, add sock close() hook to remove socks"), which is not included in bionic. That one fixes a real bug (a bpf program leak), but has a lot of fixes upstream, so is a potential regression. Given that sockmap bpf maps can only be created by root userns CAP_NET_ADMIN capable processes, leave this bug unfixed until there is some request for fixing it. Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com> --- tools/testing/selftests/bpf/test_maps.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-)