diff options
author | 2023-11-09 18:47:40 +0000 | |
---|---|---|
committer | 2023-11-09 18:47:40 +0000 | |
commit | 4ade19fe9481a0b52a74b42a53834dcecf5ddb88 (patch) | |
tree | c5ae762b6674226dce5104e9a46479d85a2573f5 | |
parent | c31b24977e8bc691a2bd60953f36106f14803f20 (diff) | |
parent | 611a2fbdd7a01bce4046db364f7af7000d69ffa1 (diff) |
Merge changes I4d0b27ba,Ic48e9cf2 into main
* changes:
Fix soong_ui file rlimits for go 1.21
Fix TestReverseSlice for go 1.21
-rw-r--r-- | android/util_test.go | 2 | ||||
-rw-r--r-- | cmd/soong_ui/main.go | 8 |
2 files changed, 6 insertions, 4 deletions
diff --git a/android/util_test.go b/android/util_test.go index 20161e52d..699135bfc 100644 --- a/android/util_test.go +++ b/android/util_test.go @@ -811,7 +811,7 @@ func TestReverseSlice(t *testing.T) { if !reflect.DeepEqual(slice, testCase.expected) { t.Errorf("expected %#v, got %#v", testCase.expected, slice) } - if slice != nil && unsafe.SliceData(testCase.in) == unsafe.SliceData(slice) { + if cap(slice) > 0 && unsafe.SliceData(testCase.in) == unsafe.SliceData(slice) { t.Errorf("expected slices to have different backing arrays") } }) diff --git a/cmd/soong_ui/main.go b/cmd/soong_ui/main.go index 34b158963..c94ff0721 100644 --- a/cmd/soong_ui/main.go +++ b/cmd/soong_ui/main.go @@ -692,9 +692,11 @@ func setMaxFiles(ctx build.Context) { } ctx.Verbosef("Current file limits: %d soft, %d hard", limits.Cur, limits.Max) - if limits.Cur == limits.Max { - return - } + + // Go 1.21 modifies the file limit but restores the original when + // execing subprocesses if it hasn't be overridden. Call Setrlimit + // here even if it doesn't appear to be necessary so that the + // syscall package considers it set. limits.Cur = limits.Max err = syscall.Setrlimit(syscall.RLIMIT_NOFILE, &limits) |