mirror of
https://github.com/golang/go
synced 2024-11-20 04:04:41 -07:00
archive/tar: perform test for hole-detection on specific builders
The test for hole-detection is heavily dependent on whether the OS and underlying FS provides support for it. Even on Linux, which has support for SEEK_HOLE and SEEK_DATA, the underlying filesystem may not have support for it. In order to avoid an ever-changing game of whack-a-mole, we whitelist the specific builders that we expect the test to pass on. Updates #21964 Change-Id: I7334e8532c96cc346ea83aabbb81b719685ad7e5 Reviewed-on: https://go-review.googlesource.com/65270 Run-TryBot: Joe Tsai <thebrokentoaster@gmail.com> Reviewed-by: Ian Lance Taylor <iant@golang.org>
This commit is contained in:
parent
2f7b57e9d8
commit
718d9de60f
@ -771,19 +771,9 @@ func TestSparseFiles(t *testing.T) {
|
||||
// Only perform the tests for hole-detection on the builders,
|
||||
// where we have greater control over the filesystem.
|
||||
sparseSupport := testenv.Builder() != ""
|
||||
if runtime.GOOS == "linux" && runtime.GOARCH == "arm" {
|
||||
// The "linux-arm" builder uses aufs for its root FS,
|
||||
// which only supports hole-punching, but not hole-detection.
|
||||
sparseSupport = false
|
||||
}
|
||||
if runtime.GOOS == "darwin" {
|
||||
// The "darwin-*" builders use hfs+ for its root FS,
|
||||
// which does not support sparse files.
|
||||
sparseSupport = false
|
||||
}
|
||||
if runtime.GOOS == "openbsd" {
|
||||
// The "openbsd-*" builders use ffs for its root FS,
|
||||
// which does not support sparse files.
|
||||
switch runtime.GOOS + "-" + runtime.GOARCH {
|
||||
case "linux-amd64", "linux-386", "windows-amd64", "windows-386":
|
||||
default:
|
||||
sparseSupport = false
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user