Files
rk35xx-android14/external/toolchain-utils/compiler_wrapper/kernel_bug.go
T
hmz007 36ed224bac Rockchip Anroid14_SDK 20240628-rkr5 (2556df1a)
Signed-off-by: hmz007 <hmz007@gmail.com>
Change-Id: Ib87fdbe7a0be7dc961af3500fe9ea4589a127f9f
2024-10-29 18:12:02 +08:00

26 lines
781 B
Go

// Copyright 2021 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package main
import (
"bytes"
"strings"
)
// crbug.com/1166017
const kernelBugRetryLimit = 25
// GCC will sometimes fail to wait on subprocesses due to this kernel bug. It always fails the
// compilation and prints "Unknown error 512" in that case.
func containsTracesOfKernelBug(buf []byte) bool {
return bytes.Contains(buf, []byte("Unknown error 512"))
}
func errorContainsTracesOfKernelBug(err error) bool {
// We'll get errors that look like "waitid: errno 512." Presumably, this isn't specific to
// waitid, so just try to match the "errno 512" ending.
return err != nil && strings.HasSuffix(err.Error(), "errno 512")
}