diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2fe653ef..c368ee41 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -65,10 +65,11 @@ jobs: cache-dependency-path: src/github.com/containerd/cgroups - name: golangci-lint - uses: golangci/golangci-lint-action@v6 + uses: golangci/golangci-lint-action@v9 with: - version: v1.62.0 - args: --verbose + version: v2.6.2 + skip-cache: true + args: --verbose -D errcheck working-directory: src/github.com/containerd/cgroups cgroupV1: diff --git a/cgroup1/memory_test.go b/cgroup1/memory_test.go index 9f7391c3..2470597e 100644 --- a/cgroup1/memory_test.go +++ b/cgroup1/memory_test.go @@ -292,8 +292,8 @@ func Test_getOomControlValue(t *testing.T) { var ( oneInt64 int64 = 1 zeroInt64 int64 = 0 - trueBool bool = true - falseBool bool = false + trueBool = true + falseBool = false ) type args struct { @@ -337,7 +337,7 @@ func Test_getOomControlValue(t *testing.T) { t.Errorf("getOomControlValue() = %v, want %v", got, tt.want) return } - if !(got == nil || tt.want == nil) && *got != *tt.want { + if got != nil && tt.want != nil && *got != *tt.want { t.Errorf("getOomControlValue() = %v, want %v", got, tt.want) } }) diff --git a/cgroup1/rdma.go b/cgroup1/rdma.go index 0a45ae08..2492ac72 100644 --- a/cgroup1/rdma.go +++ b/cgroup1/rdma.go @@ -85,23 +85,26 @@ func parseRdmaKV(raw string, entry *v1.RdmaEntry) { var value uint64 var err error - parts := strings.Split(raw, "=") - switch len(parts) { - case 2: - if parts[1] == "max" { - value = math.MaxUint32 - } else { - value, err = parseUint(parts[1], 10, 32) - if err != nil { - return - } - } - if parts[0] == "hca_handle" { - entry.HcaHandles = uint32(value) - } else if parts[0] == "hca_object" { - entry.HcaObjects = uint32(value) + k, v, found := strings.Cut(raw, "=") + if !found { + return + } + + if v == "max" { + value = math.MaxUint32 + } else { + value, err = parseUint(v, 10, 32) + if err != nil { + return } } + + switch k { + case "hca_handle": + entry.HcaHandles = uint32(value) + case "hca_object": + entry.HcaObjects = uint32(value) + } } func toRdmaEntry(strEntries []string) []*v1.RdmaEntry { diff --git a/cgroup2/utils.go b/cgroup2/utils.go index a48213d9..159f50e5 100644 --- a/cgroup2/utils.go +++ b/cgroup2/utils.go @@ -387,23 +387,26 @@ func parseRdmaKV(raw string, entry *stats.RdmaEntry) { var value uint64 var err error - parts := strings.Split(raw, "=") - switch len(parts) { - case 2: - if parts[1] == "max" { - value = math.MaxUint32 - } else { - value, err = parseUint(parts[1], 10, 32) - if err != nil { - return - } - } - if parts[0] == "hca_handle" { - entry.HcaHandles = uint32(value) - } else if parts[0] == "hca_object" { - entry.HcaObjects = uint32(value) + k, v, found := strings.Cut(raw, "=") + if !found { + return + } + + if v == "max" { + value = math.MaxUint32 + } else { + value, err = parseUint(v, 10, 32) + if err != nil { + return } } + + switch k { + case "hca_handle": + entry.HcaHandles = uint32(value) + case "hca_object": + entry.HcaObjects = uint32(value) + } } func toRdmaEntry(strEntries []string) []*stats.RdmaEntry { @@ -472,8 +475,8 @@ func hugePageSizes() []string { if err != nil { return } + defer dir.Close() files, err := dir.Readdirnames(0) - dir.Close() if err != nil { return }