From 39106464948256be1d2f4c10a2b8999557580bbd Mon Sep 17 00:00:00 2001 From: Matheus Date: Wed, 5 Jul 2023 00:04:23 -0300 Subject: [PATCH] file: fileflagstovnodeflags O_NONBLOCK -> V_FFLAGS_NONBLOCKING support --- kernel-src/include/kernel/file.h | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/kernel-src/include/kernel/file.h b/kernel-src/include/kernel/file.h index d34f4547..ea166152 100644 --- a/kernel-src/include/kernel/file.h +++ b/kernel-src/include/kernel/file.h @@ -34,16 +34,6 @@ int fd_clone(proc_t *proc); #define FILE_WRITE 2 #define FILE_KNOWN_FLAGS 3 -static inline int fileflagstovnodeflags(int flags) { - int vnflags = 0; - if (flags & FILE_READ) - vnflags |= V_FFLAGS_READ; - if (flags & FILE_WRITE) - vnflags |= V_FFLAGS_WRITE; - - return vnflags; -} - #define O_RDONLY 0 #define O_WRONLY 1 #define O_RDWR 2 @@ -66,6 +56,18 @@ static inline int fileflagstovnodeflags(int flags) { #define O_RSYNC 04010000 #define O_TMPFILE 020000000 +static inline int fileflagstovnodeflags(int flags) { + int vnflags = 0; + if (flags & FILE_READ) + vnflags |= V_FFLAGS_READ; + if (flags & FILE_WRITE) + vnflags |= V_FFLAGS_WRITE; + if (flags & O_NONBLOCK) + vnflags |= V_FFLAGS_NONBLOCKING; + + return vnflags; +} + #define FDTABLE_LIMIT 256 #endif