From cab120218382c78fb4263566a38df78aa3653f72 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Thu, 7 Jan 2021 17:32:06 -0800 Subject: [PATCH] cmd/link: accept extra blocks in TestFallocate For #41127 Change-Id: I794a082299c6dce4202223197ece1864bed36810 Reviewed-on: https://go-review.googlesource.com/c/go/+/282555 Trust: Ian Lance Taylor Reviewed-by: Austin Clements --- src/cmd/link/internal/ld/fallocate_test.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/cmd/link/internal/ld/fallocate_test.go b/src/cmd/link/internal/ld/fallocate_test.go index 51f5fcdd9fc..244b70f0615 100644 --- a/src/cmd/link/internal/ld/fallocate_test.go +++ b/src/cmd/link/internal/ld/fallocate_test.go @@ -57,8 +57,12 @@ func TestFallocate(t *testing.T) { if got := stat.Size(); got != sz { t.Errorf("unexpected file size: got %d, want %d", got, sz) } - if got, want := stat.Sys().(*syscall.Stat_t).Blocks, (sz+511)/512; got != want { - t.Errorf("unexpected disk usage: got %d blocks, want %d", got, want) + // The number of blocks must be enough for the requested size. + // We used to require an exact match, but it appears that + // some file systems allocate a few extra blocks in some cases. + // See issue #41127. + if got, want := stat.Sys().(*syscall.Stat_t).Blocks, (sz+511)/512; got < want { + t.Errorf("unexpected disk usage: got %d blocks, want at least %d", got, want) } out.munmap() }