]> Cypherpunks repositories - gostls13.git/commit
os: don't try to make the directory FD non-blocking in os.ReadDir
authorPeter Collingbourne <pcc@google.com>
Tue, 12 Mar 2024 03:10:48 +0000 (20:10 -0700)
committerGopher Robot <gobot@golang.org>
Sat, 16 Mar 2024 00:34:52 +0000 (00:34 +0000)
commitb822f098c557ea3d9200fd2d8a2e2b4d641e83e4
treeff5bd7207c526885f741ba5d99ee65e7a83765de
parentbedda245740d766bfad36b2d91a22781575fe463
os: don't try to make the directory FD non-blocking in os.ReadDir

This will fail because epoll_ctl() fails on directory FDs, so we
end up issuing unnecessary syscalls. My test program that calls
filepath.WalkDir on a large directory tree runs 1.23 ± 0.04 times
faster than with the original implementation.

Change-Id: Ie33d798c48057a7b2d0bacac80fcdde5b5a8bb1b
Reviewed-on: https://go-review.googlesource.com/c/go/+/570877
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Auto-Submit: Ian Lance Taylor <iant@google.com>
Reviewed-by: Ian Lance Taylor <iant@google.com>
src/os/dir.go
src/os/file.go
src/os/file_plan9.go
src/os/file_unix.go
src/os/file_windows.go