Skip to content

Commit dcf3545

Browse files
tklausergopherbot
authored andcommitted
syscall: wrap fstatat only once on linux/{arm64,riscv64}
Currently the linux/arm64 and linux/riscv64 ports wrap the fstatat syscall twice, once in func fstatat and once in func Fstatat. Change the latter to be a simple wrapper around the former to deduplicate some code. Change-Id: I82ec9374e2bcfe116eabf01f021eed1ee810ec15 Reviewed-on: https://go-review.googlesource.com/c/go/+/412934 Reviewed-by: Ian Lance Taylor <[email protected]> Auto-Submit: Tobias Klauser <[email protected]> TryBot-Result: Gopher Robot <[email protected]> Run-TryBot: Tobias Klauser <[email protected]> Reviewed-by: Than McIntosh <[email protected]>
1 parent 0f8dffd commit dcf3545

File tree

4 files changed

+14
-36
lines changed

4 files changed

+14
-36
lines changed

src/syscall/syscall_linux_arm64.go

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,12 @@ func EpollCreate(size int) (fd int, err error) {
1818
//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) = SYS_EPOLL_PWAIT
1919
//sys Fchown(fd int, uid int, gid int) (err error)
2020
//sys Fstat(fd int, stat *Stat_t) (err error)
21-
//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error)
2221
//sys fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error)
22+
23+
func Fstatat(fd int, path string, stat *Stat_t, flags int) error {
24+
return fstatat(fd, path, stat, flags)
25+
}
26+
2327
//sys Fstatfs(fd int, buf *Statfs_t) (err error)
2428
//sys Ftruncate(fd int, length int64) (err error)
2529
//sysnb Getegid() (egid int)
@@ -40,15 +44,15 @@ func EpollCreate(size int) (fd int, err error) {
4044
//sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error)
4145

4246
func Stat(path string, stat *Stat_t) (err error) {
43-
return Fstatat(_AT_FDCWD, path, stat, 0)
47+
return fstatat(_AT_FDCWD, path, stat, 0)
4448
}
4549

4650
func Lchown(path string, uid int, gid int) (err error) {
4751
return Fchownat(_AT_FDCWD, path, uid, gid, _AT_SYMLINK_NOFOLLOW)
4852
}
4953

5054
func Lstat(path string, stat *Stat_t) (err error) {
51-
return Fstatat(_AT_FDCWD, path, stat, _AT_SYMLINK_NOFOLLOW)
55+
return fstatat(_AT_FDCWD, path, stat, _AT_SYMLINK_NOFOLLOW)
5256
}
5357

5458
//sys Statfs(path string, buf *Statfs_t) (err error)

src/syscall/syscall_linux_riscv64.go

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,12 @@ func EpollCreate(size int) (fd int, err error) {
1818
//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) = SYS_EPOLL_PWAIT
1919
//sys Fchown(fd int, uid int, gid int) (err error)
2020
//sys Fstat(fd int, stat *Stat_t) (err error)
21-
//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error)
2221
//sys fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error)
22+
23+
func Fstatat(fd int, path string, stat *Stat_t, flags int) error {
24+
return fstatat(fd, path, stat, flags)
25+
}
26+
2327
//sys Fstatfs(fd int, buf *Statfs_t) (err error)
2428
//sys Ftruncate(fd int, length int64) (err error)
2529
//sysnb Getegid() (egid int)
@@ -44,15 +48,15 @@ func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err e
4448
}
4549

4650
func Stat(path string, stat *Stat_t) (err error) {
47-
return Fstatat(_AT_FDCWD, path, stat, 0)
51+
return fstatat(_AT_FDCWD, path, stat, 0)
4852
}
4953

5054
func Lchown(path string, uid int, gid int) (err error) {
5155
return Fchownat(_AT_FDCWD, path, uid, gid, _AT_SYMLINK_NOFOLLOW)
5256
}
5357

5458
func Lstat(path string, stat *Stat_t) (err error) {
55-
return Fstatat(_AT_FDCWD, path, stat, _AT_SYMLINK_NOFOLLOW)
59+
return fstatat(_AT_FDCWD, path, stat, _AT_SYMLINK_NOFOLLOW)
5660
}
5761

5862
//sys Statfs(path string, buf *Statfs_t) (err error)

src/syscall/zsyscall_linux_arm64.go

Lines changed: 0 additions & 15 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/syscall/zsyscall_linux_riscv64.go

Lines changed: 0 additions & 15 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)