mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
os: cut limited read to 1 GB
If systems actually read that much, using 2GB-1 will result in misaligned subsequent reads. Use 1GB instead, which will certainly keep reads aligned and which is plenty large enough. Update #7812. LGTM=bradfitz R=bradfitz CC=golang-codereviews https://golang.org/cl/94070044
This commit is contained in:
parent
3b3e1a09a9
commit
3879f0abcd
1 changed files with 3 additions and 1 deletions
|
|
@ -174,9 +174,11 @@ func (f *File) readdir(n int) (fi []FileInfo, err error) {
|
|||
|
||||
// Darwin and FreeBSD can't read or write 2GB+ at a time,
|
||||
// even on 64-bit systems. See golang.org/issue/7812.
|
||||
// Use 1GB instead of, say, 2GB-1, to keep subsequent
|
||||
// reads aligned.
|
||||
const (
|
||||
needsMaxRW = runtime.GOOS == "darwin" || runtime.GOOS == "freebsd"
|
||||
maxRW = 2<<30 - 1
|
||||
maxRW = 1 << 30
|
||||
)
|
||||
|
||||
// read reads up to len(b) bytes from the File.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue