From 2a78bf85968ebff58b4d23be43fecdbe6178adb2 Mon Sep 17 00:00:00 2001 From: Gunnar Beutner Date: Mon, 28 Jun 2021 20:59:35 +0200 Subject: Kernel: Fix the return type for syscalls The Process::Handler type has KResultOr as its return type. Using a different return type with an equally-sized template parameter sort of works but breaks once that condition is no longer true, e.g. for KResultOr on x86_64. Ideally the syscall handlers would also take FlatPtrs as their args so we can get rid of the reinterpret_cast for the function pointer but I didn't quite feel like cleaning that up as well. --- Kernel/Syscalls/write.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'Kernel/Syscalls/write.cpp') diff --git a/Kernel/Syscalls/write.cpp b/Kernel/Syscalls/write.cpp index b2585745dc..fece780d9c 100644 --- a/Kernel/Syscalls/write.cpp +++ b/Kernel/Syscalls/write.cpp @@ -11,7 +11,7 @@ namespace Kernel { -KResultOr Process::sys$writev(int fd, Userspace iov, int iov_count) +KResultOr Process::sys$writev(int fd, Userspace iov, int iov_count) { REQUIRE_PROMISE(stdio); if (iov_count < 0) @@ -57,7 +57,7 @@ KResultOr Process::sys$writev(int fd, Userspace iov return nwritten; } -KResultOr Process::do_write(FileDescription& description, const UserOrKernelBuffer& data, size_t data_size) +KResultOr Process::do_write(FileDescription& description, const UserOrKernelBuffer& data, size_t data_size) { size_t total_nwritten = 0; @@ -96,7 +96,7 @@ KResultOr Process::do_write(FileDescription& description, const UserOrKe return total_nwritten; } -KResultOr Process::sys$write(int fd, Userspace data, size_t size) +KResultOr Process::sys$write(int fd, Userspace data, size_t size) { REQUIRE_PROMISE(stdio); if (size == 0) -- cgit v1.2.3