Matheus
ee254a81e9
vfs: vfs_iscacheable
2024-09-04 21:33:59 -03:00
Matheus
0f18341674
kernel: vmm_changemmuflags cred check
2024-08-30 21:22:17 -03:00
Matheus
e442a3de8e
vmm: redo changemmurange and make it dirty pages when applicable
2024-08-30 20:20:41 -03:00
Matheus
f55b51a06d
vfs: finish new locking scheme
2024-08-27 21:02:12 -03:00
Matheus
42bda0bf92
vfs: redo locking
2024-08-26 21:47:23 -03:00
Matheus
f8a5d9426b
vmm: send SIGBUS on vmm OOM
2024-08-21 23:52:14 -03:00
Matheus
dd75dc2d87
vmm: vmm_changemmuflags
2024-08-21 21:33:29 -03:00
Matheus
dfb75e78fc
vmm: fix vmm_getphysical
2024-08-10 22:42:05 -03:00
Matheus
d310764085
vmm: VMM_FLAGS_REPLACE
2024-08-10 22:41:29 -03:00
Matheus
d447751c30
vmm: properly handle direct physical mapping unmap
2024-07-30 20:49:38 -03:00
Matheus
e675f1c152
vmm/mmu: be more selective on which parts of the physical memory to map initially
2024-07-27 23:56:38 -03:00
Matheus
f3e09527c9
vmmcache: pushpage
2024-07-16 20:49:44 -03:00
Matheus
645e1e2809
vmmcache: fix dirty file pages truncation
2024-07-16 20:23:55 -03:00
Matheus
0ff8a6c0fa
pmm: account for LIMINE_MEMMAP_KERNEL_AND_MODULES
2024-07-10 19:46:22 -03:00
Matheus
a8a097192d
vmm: defrag file mappings too
2024-06-30 12:12:17 -03:00
Matheus
7821eb61c1
vmmcache: sleep while waiting for ready pages
2024-06-27 22:08:01 -03:00
Matheus
f1efe195bf
vmmcache: use new event system for syncing
2024-06-27 21:55:14 -03:00
Matheus
6c3cdf495d
vmm: fix file mapping defrag bug
2024-06-22 19:29:07 -03:00
Matheus
68624ad31b
pmm: add assert against use after free
2024-06-16 12:48:41 -03:00
Matheus
a524d9b48b
pmm: list tails and better standby page handling
2024-06-16 12:02:19 -03:00
Matheus
50b4b45d00
kernel: usercopy functions
2024-06-09 19:31:26 -03:00
Matheus
13b142a91e
vmm: fix destroyrange shared file unmapping
2024-06-08 14:03:27 -03:00
Matheus
c81bdac897
signals: handle SIGBUS, SIGSEGV, SIGILL etc
2024-05-29 11:06:15 -03:00
Matheus
0030a0b21b
vfs: make setattr take in which attributes to change
2024-05-27 23:05:57 -03:00
Matheus
f29a4cc321
vmmcache: fix page address passed to pmm_release
2024-05-27 22:01:52 -03:00
Matheus
5562f078fa
pmm: fix page cache takepage retry memory leak
2024-05-27 22:01:16 -03:00
Matheus
171fde1574
vmmcache: vmmcache_evict
2024-05-26 15:30:14 -03:00
Matheus
e6954a3a70
vmmcache: fix page retry
2024-05-26 13:39:28 -03:00
Matheus
3bcc3e5585
fixes
2024-05-25 20:35:19 -03:00
Matheus
b9071fe59e
syscalls: fsync
2024-05-25 12:04:29 -03:00
Matheus
abb2fb9b26
vmmcache: run writer thread every 15 seconds
2024-05-24 22:09:20 -03:00
Matheus
642e245522
syscalls: sync
2024-05-24 22:01:11 -03:00
Matheus
48b7fb4324
vmmcache: initial implementation
2024-05-24 18:03:24 -03:00
Matheus
6087a20d81
pmm and slab: switch from spinlocks to mutexes
2024-05-08 21:07:42 -03:00
Matheus
899186ea85
syscall log: log number of free physical pages before and after every system call
2024-04-21 20:16:38 -03:00
Matheus
f827163056
munmap: fix memory leak
2024-04-21 20:16:01 -03:00
Matheus
d5421608bb
vmm: acqure space mutex in page fault handler
2024-04-20 15:47:30 -03:00
Matheus
06629f3088
vmm: vmm_getphysical()
2024-04-14 19:11:15 -03:00
Matheus
57c94ebf15
smp: let other processors run threads
2023-11-30 17:54:32 -03:00
Matheus
ba16aa366f
logging: make term and printf smp safe
2023-10-01 19:09:28 -03:00
Matheus
6276eec4ba
vmm: fix unmap split
2023-08-10 16:41:32 -03:00
Matheus
30851d4971
ports: tar and xz
2023-08-02 21:27:24 -03:00
Matheus
245da66fc3
vmm: make fork use copy-on-write
2023-08-02 19:55:53 -03:00
Matheus
7e1443d032
vmm: copy on write and changes to how page faults are handled
2023-08-02 01:18:35 -03:00
Matheus
55fc1b7026
pmm: full rewrite
...
I've decided to do a rewrite on it due to some plans that would make refcounting physical pages nescessary among other things. now instead of a bitmap it uses a list of pages with each physical page having a page_t associated with it
2023-07-29 17:14:41 -03:00
Matheus
8ca2360991
vmm: add a pflock mutex to synchronize pagefaults
2023-07-26 22:47:00 -03:00
Matheus
f5c5b01d85
vmm: use mutexes
2023-07-26 21:39:06 -03:00
Matheus
a3da864de8
memory management: add more protection against corruption
2023-07-23 01:06:22 -03:00
Matheus
2c058a56e6
kernel: random fixes on syscalls and pmm
2023-07-11 23:01:52 -03:00
Matheus
255255af25
vmm: fix unmap
2023-07-11 23:01:35 -03:00