aboutsummaryrefslogtreecommitdiff
path: root/core/sys/linux
diff options
context:
space:
mode:
authormarcs-feh <marcosfehlauer@protonmail.com>2024-01-26 12:09:04 -0300
committermarcs-feh <marcosfehlauer@protonmail.com>2024-01-26 12:10:15 -0300
commitb58627490b63e5c4055238c99fd2cde635abd358 (patch)
tree46f6d8d2c9447d6967ddcf8f188a04f38c4fdae3 /core/sys/linux
parentdbaa82b581f09f26ae21bb4f595b644ca2ce465d (diff)
Adjust signture + Fix rebase conflict
Diffstat (limited to 'core/sys/linux')
-rw-r--r--core/sys/linux/sys.odin7
1 files changed, 4 insertions, 3 deletions
diff --git a/core/sys/linux/sys.odin b/core/sys/linux/sys.odin
index d98b95113..74a172c75 100644
--- a/core/sys/linux/sys.odin
+++ b/core/sys/linux/sys.odin
@@ -220,12 +220,13 @@ rt_sigprocmask :: proc "contextless" (mask_kind: Sig_Mask_Kind, new_set: ^Sig_Se
Control devices. The ioctl syscall is a bit special because
its argument is usually a pointer to some driver-specific structure.
The request value is device-specific. Consult your LibC implementation's
- ioctls.h file to learn more.
+ ioctls.h file to learn more. The returned value of ioctl *may* be an error
+ code value instead of a memory address depending on the request type.
Available since Linux 1.0.
*/
-ioctl :: proc "contextless" (fd: Fd, request: i32, arg: uintptr) -> (Errno) {
+ioctl :: proc "contextless" (fd: Fd, request: u64, arg: u64) -> (uintptr) {
ret := syscall(SYS_ioctl, fd, request, arg)
- return Errno(-ret)
+ return uintptr(ret)
}
/*