]> Cypherpunks repositories - gostls13.git/commitdiff
os: increase directory reading block size on Unix systems
authorIan Lance Taylor <iant@golang.org>
Fri, 29 Jun 2018 21:38:56 +0000 (14:38 -0700)
committerIan Lance Taylor <iant@golang.org>
Fri, 6 Jul 2018 22:39:14 +0000 (22:39 +0000)
Reportedly CIFS on RHEL 7 can fail to report files if directories are
read in 4K increments. While this seems to be a CIFS or RHEL bug,
reportedly CIFS does not return more than 5760 bytes in a block, so
reading in 8K increments should hide the problem from users with
minimal cost.

Fixes #24015

Change-Id: Iaf9f00ffe338d379c819ed9edcd4cc9834e3b0f7
Reviewed-on: https://go-review.googlesource.com/121756
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
src/os/dir_unix.go

index 09c3d2eb61cc5b9b5af43304c50ddcb64db08ce5..79d61c783f18c83c4b74ae4930e42fe9806a3c2f 100644 (file)
@@ -13,7 +13,8 @@ import (
 )
 
 const (
-       blockSize = 4096
+       // More than 5760 to work around https://golang.org/issue/24015.
+       blockSize = 8192
 )
 
 func (f *File) readdir(n int) (fi []FileInfo, err error) {