aboutsummaryrefslogtreecommitdiff
path: root/src/syscall/syscall_linux_arm64.go
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@golang.org>2024-08-28 16:20:44 -0700
committerGopher Robot <gobot@golang.org>2024-08-30 19:26:45 +0000
commitd0baac37e61648c2a9e9299553c863cf7b7eed61 (patch)
treea930867938705097c3e0872a2339bda46de086e6 /src/syscall/syscall_linux_arm64.go
parentc2098929056481d0dc09f5f42b8959f4db8878f2 (diff)
downloadgo-d0baac37e61648c2a9e9299553c863cf7b7eed61.tar.xz
syscall: always use prlimit for getrlimit/setrlimit on Linux
Linux added the prlimit system call in version 2.6.36. As our minimum Linux kernel version is now 3.2, simplify the various getrlimit/setlrimit implementations to just always use prlimit. For #67001 Change-Id: I2512c21c947d0bc83f8f9077c143163fd8d83be3 Reviewed-on: https://go-review.googlesource.com/c/go/+/609178 Reviewed-by: Cherry Mui <cherryyz@google.com> Reviewed-by: Damien Neil <dneil@google.com> Auto-Submit: Ian Lance Taylor <iant@golang.org> Reviewed-by: Tobias Klauser <tobias.klauser@gmail.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Diffstat (limited to 'src/syscall/syscall_linux_arm64.go')
-rw-r--r--src/syscall/syscall_linux_arm64.go30
1 files changed, 0 insertions, 30 deletions
diff --git a/src/syscall/syscall_linux_arm64.go b/src/syscall/syscall_linux_arm64.go
index b87b51c0c0..fb0ecd77b7 100644
--- a/src/syscall/syscall_linux_arm64.go
+++ b/src/syscall/syscall_linux_arm64.go
@@ -27,7 +27,6 @@ func Fstatat(fd int, path string, stat *Stat_t, flags int) error {
//sysnb Getegid() (egid int)
//sysnb Geteuid() (euid int)
//sysnb Getgid() (gid int)
-//sysnb getrlimit(resource int, rlim *Rlimit) (err error)
//sysnb Getuid() (uid int)
//sys Listen(s int, n int) (err error)
//sys pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
@@ -37,7 +36,6 @@ func Fstatat(fd int, path string, stat *Stat_t, flags int) error {
//sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
//sys Setfsgid(gid int) (err error)
//sys Setfsuid(uid int) (err error)
-//sysnb setrlimit1(resource int, rlim *Rlimit) (err error) = SYS_SETRLIMIT
//sys Shutdown(fd int, how int) (err error)
//sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error)
@@ -140,34 +138,6 @@ func utimes(path string, tv *[2]Timeval) (err error) {
return utimensat(_AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
}
-// Getrlimit prefers the prlimit64 system call. See issue 38604.
-func Getrlimit(resource int, rlim *Rlimit) error {
- err := prlimit(0, resource, nil, rlim)
- if err != ENOSYS {
- return err
- }
- return getrlimit(resource, rlim)
-}
-
-// setrlimit prefers the prlimit64 system call. See issue 38604.
-func setrlimit(resource int, rlim *Rlimit) error {
- err := prlimit(0, resource, rlim, nil)
- if err != ENOSYS {
- return err
- }
- return setrlimit1(resource, rlim)
-}
-
-//go:nosplit
-func rawSetrlimit(resource int, rlim *Rlimit) Errno {
- _, _, errno := RawSyscall6(SYS_PRLIMIT64, 0, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0, 0, 0)
- if errno != ENOSYS {
- return errno
- }
- _, _, errno = RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0)
- return errno
-}
-
func (r *PtraceRegs) PC() uint64 { return r.Pc }
func (r *PtraceRegs) SetPC(pc uint64) { r.Pc = pc }