mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-08 23:42:53 +03:00
Kernel: Clarify why ftruncate() & pread() are passed off_t const*
I fell into this trap and tried to switch the syscalls to pass by the `off_t` by register. I think it makes sense to add a clarifying comment for future readers of the code, so they don't fall into the same trap. :^)
This commit is contained in:
parent
9d034785de
commit
b5367bbf31
Notes:
sideshowbarker
2024-07-17 21:59:27 +09:00
Author: https://github.com/bgianfo Commit: https://github.com/SerenityOS/serenity/commit/b5367bbf311 Pull-request: https://github.com/SerenityOS/serenity/pull/11479 Reviewed-by: https://github.com/BertalanD ✅
@ -9,6 +9,8 @@
|
||||
|
||||
namespace Kernel {
|
||||
|
||||
// NOTE: The length is passed by pointer because off_t is 64bit,
|
||||
// hence it can't be passed by register on 32bit platforms.
|
||||
ErrorOr<FlatPtr> Process::sys$ftruncate(int fd, Userspace<off_t const*> userspace_length)
|
||||
{
|
||||
VERIFY_PROCESS_BIG_LOCK_ACQUIRED(this)
|
||||
|
@ -86,6 +86,8 @@ ErrorOr<FlatPtr> Process::sys$read(int fd, Userspace<u8*> buffer, size_t size)
|
||||
return TRY(description->read(user_buffer, size));
|
||||
}
|
||||
|
||||
// NOTE: The offset is passed by pointer because off_t is 64bit,
|
||||
// hence it can't be passed by register on 32bit platforms.
|
||||
ErrorOr<FlatPtr> Process::sys$pread(int fd, Userspace<u8*> buffer, size_t size, Userspace<off_t const*> userspace_offset)
|
||||
{
|
||||
VERIFY_PROCESS_BIG_LOCK_ACQUIRED(this)
|
||||
|
Loading…
Reference in New Issue
Block a user