diff options
author | Anton Kling <anton@kling.gg> | 2024-02-21 00:14:29 +0100 |
---|---|---|
committer | Anton Kling <anton@kling.gg> | 2024-02-21 00:14:29 +0100 |
commit | 8ff63b062d724826d8017504063df9b92f8e6703 (patch) | |
tree | 03bf0b5a278a4908da8912f956e5651bea9412f1 /kernel/fs/shm.c | |
parent | a85eacdd2406fede4d6ff5cb130b1758978cabb3 (diff) |
New clang-format options
Diffstat (limited to 'kernel/fs/shm.c')
-rw-r--r-- | kernel/fs/shm.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/kernel/fs/shm.c b/kernel/fs/shm.c index 5eb7f23..e0c0211 100644 --- a/kernel/fs/shm.c +++ b/kernel/fs/shm.c @@ -16,11 +16,13 @@ void shm_init(void) { int shm_write(u8 *buffer, u64 offset, u64 len, vfs_fd_t *fd) { vfs_vm_object_t *p = fd->inode->internal_object; - if (offset > p->size) + if (offset > p->size) { return -EFBIG; + } - if (offset + len > p->size) + if (offset + len > p->size) { len = p->size - offset; + } memcpy((void *)((uintptr_t)((uintptr_t)p->virtual_object + offset)), buffer, len); @@ -30,11 +32,13 @@ int shm_write(u8 *buffer, u64 offset, u64 len, vfs_fd_t *fd) { int shm_read(u8 *buffer, u64 offset, u64 len, vfs_fd_t *fd) { vfs_vm_object_t *p = fd->inode->internal_object; - if (offset > p->size) + if (offset > p->size) { return -EFBIG; + } - if (offset + len > p->size) + if (offset + len > p->size) { len = p->size - offset; + } memcpy((void *)buffer, (void *)((uintptr_t)((uintptr_t)p->virtual_object + offset)), len); @@ -54,10 +58,11 @@ int shm_ftruncate(vfs_fd_t *fd, size_t length) { p->virtual_object = ksbrk(length); int n = (uintptr_t)align_page((void *)(u32)length) / 0x1000; p->object = kmalloc(sizeof(void *) * n); - for (int i = 0; i < n; i++) + for (int i = 0; i < n; i++) { p->object[i] = (void *)(get_page(p->virtual_object + (i * 0x1000), NULL, 0, 0)->frame * 0x1000); + } return 0; } |