Skip to content

Commit

Permalink
map: fix LookupAndDelete spinlock test
Browse files Browse the repository at this point in the history
Passing flags to BPF_MAP_LOOKUP_AND_DELETE_ELEM is only possible
from 5.14. Skip the test on earlier kernels.
  • Loading branch information
lmb committed Jul 21, 2022
1 parent 96d61a7 commit fedcb58
Showing 1 changed file with 15 additions and 12 deletions.
27 changes: 15 additions & 12 deletions map_test.go
Expand Up @@ -382,20 +382,23 @@ func TestMapWithLock(t *testing.T) {
t.Fatalf("Want value 5, got %d", value.Cnt)
}

value.Cnt = 0
err = m.LookupAndDeleteWithFlags(&key, &value, LookupLock)
if err != nil {
t.Fatal(err)
}
if value.Cnt != 5 {
t.Fatalf("Want value 5, got %d", value.Cnt)
}
t.Run("LookupAndDelete", func(t *testing.T) {
testutils.SkipOnOldKernel(t, "5.14", "LOOKUP_AND_DELETE flags")

err = m.LookupWithFlags(&key, &value, LookupLock)
if err != nil && !errors.Is(err, ErrKeyNotExist) {
t.Fatal(err)
}
value.Cnt = 0
err = m.LookupAndDeleteWithFlags(&key, &value, LookupLock)
if err != nil {
t.Fatal(err)
}
if value.Cnt != 5 {
t.Fatalf("Want value 5, got %d", value.Cnt)
}

err = m.LookupWithFlags(&key, &value, LookupLock)
if err != nil && !errors.Is(err, ErrKeyNotExist) {
t.Fatal(err)
}
})
})
}

Expand Down

0 comments on commit fedcb58

Please sign in to comment.