From 8c032568c572ad346491f78325c278b886122ec5 Mon Sep 17 00:00:00 2001
From: Anton Kling <anton@kling.gg>
Date: Wed, 26 Jun 2024 20:20:32 +0200
Subject: Remove mread

---
 kernel/cpu/syscall.c | 6 +++---
 kernel/fs/vfs.c      | 8 ++------
 kernel/fs/vfs.h      | 1 -
 3 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/kernel/cpu/syscall.c b/kernel/cpu/syscall.c
index 3fe0766..adbb27a 100644
--- a/kernel/cpu/syscall.c
+++ b/kernel/cpu/syscall.c
@@ -53,12 +53,12 @@ int syscall_pread(SYS_PREAD_PARAMS *args) {
   return vfs_pread(args->fd, args->buf, args->count, args->offset);
 }
 
-int syscall_mread(int fd, void *buf, size_t count, int blocking) {
+int syscall_read(int fd, void *buf, size_t count) {
   vfs_fd_t *fd_ptr = get_vfs_fd(fd, NULL);
   if (!fd_ptr) {
     return -EBADF;
   }
-  int rc = vfs_pmread(fd, buf, count, blocking, fd_ptr->offset);
+  int rc = vfs_pread(fd, buf, count, fd_ptr->offset);
   fd_ptr->offset += rc;
   return rc;
 }
@@ -170,7 +170,7 @@ int syscall_getpeername(int sockfd, struct sockaddr *restrict addr,
 }
 
 int (*syscall_functions[])() = {
-    (void(*))syscall_open,         (void(*))syscall_mread,
+    (void(*))syscall_open,         (void(*))syscall_read,
     (void(*))syscall_write,        (void(*))syscall_pread,
     (void(*))syscall_pwrite,       (void(*))syscall_fork,
     (void(*))syscall_exec,         (void(*))syscall_getpid,
diff --git a/kernel/fs/vfs.c b/kernel/fs/vfs.c
index 4afadea..21c98cf 100644
--- a/kernel/fs/vfs.c
+++ b/kernel/fs/vfs.c
@@ -327,7 +327,7 @@ int raw_vfs_pread(vfs_fd_t *vfs_fd, void *buf, u64 count, u64 offset) {
   return vfs_fd->inode->read(buf, offset, count, vfs_fd);
 }
 
-int vfs_pmread(int fd, void *buf, u64 count, int blocking, u64 offset) {
+int vfs_pread(int fd, void *buf, u64 count, u64 offset) {
   if (fd >= 100) {
     kprintf("EBADF : %x\n", fd);
     return -EBADF;
@@ -342,7 +342,7 @@ int vfs_pmread(int fd, void *buf, u64 count, int blocking, u64 offset) {
   }
   int rc = raw_vfs_pread(vfs_fd, buf, count, offset);
   if ((-EAGAIN == rc || -EWOULDBLOCK == rc) && count > 0) {
-    if (!(vfs_fd->flags & O_NONBLOCK) && blocking) {
+    if (!(vfs_fd->flags & O_NONBLOCK)) {
       struct pollfd fds;
       do {
         fds.fd = fd;
@@ -359,10 +359,6 @@ int vfs_pmread(int fd, void *buf, u64 count, int blocking, u64 offset) {
   return rc;
 }
 
-int vfs_pread(int fd, void *buf, u64 count, u64 offset) {
-  return vfs_pmread(fd, buf, count, 1, offset);
-}
-
 int raw_vfs_pwrite(vfs_fd_t *vfs_fd, void *buf, u64 count, u64 offset) {
   assert(vfs_fd);
   assert(vfs_fd->inode);
diff --git a/kernel/fs/vfs.h b/kernel/fs/vfs.h
index bce3925..64a7a80 100644
--- a/kernel/fs/vfs.h
+++ b/kernel/fs/vfs.h
@@ -82,7 +82,6 @@ void vfs_mount(char *path, vfs_inode_t *local_root);
 int vfs_pwrite(int fd, void *buf, u64 count, u64 offset);
 int raw_vfs_pwrite(vfs_fd_t *vfs_fd, void *buf, u64 count, u64 offset);
 int raw_vfs_pread(vfs_fd_t *vfs_fd, void *buf, u64 count, u64 offset);
-int vfs_pmread(int fd, void *buf, u64 count, int blocking, u64 offset);
 int vfs_pread(int fd, void *buf, u64 count, u64 offset);
 vfs_vm_object_t *vfs_get_vm_object(int fd, u64 length, u64 offset);
 int vfs_dup2(int org_fd, int new_fd);
-- 
cgit v1.2.3