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
Matheus
2f14b61b72
vmm: fix shared flag not being passed to VOP_MMAP and VOP_UNMAP
2023-07-10 21:16:10 -03:00
Matheus
92a518927d
vmm: pass cred struct to VOP_MAP and VOP_UNMAP
2023-07-08 14:40:04 -03:00
Matheus
222ff36fb6
vmm: fix linked list
2023-07-03 22:54:52 -03:00
Matheus
00cce59b1a
slab: fix linked list
2023-07-03 22:44:26 -03:00
Matheus
fef149ca55
vfs: redo vnode locking
2023-06-15 19:57:56 -03:00
Matheus
f2b76caa84
vmm: change how vmm_destroycontext is handled
2023-06-10 12:09:46 -03:00
Matheus
5ac1745b5f
vmm: fix deadlock on new cache
2023-06-08 21:56:29 -03:00
Matheus
85dc9cffdf
vmm: rename DESTROY_FLAGS_NOSYNC and force hhdm mappings to use VMM_FLAGS_EXACT
2023-05-29 07:50:59 -03:00
Matheus
6761ca494b
slab: fix indirect return object and add a debug assert define
2023-05-28 17:55:02 -03:00
Matheus
29cd03313e
vmm: vmm_fork, vmm_destroycontext and fix pagetable used on destroyrange
2023-05-16 19:36:06 -03:00
Matheus
69b1ff7a70
vmm: map null hhdm page
2023-05-15 22:42:18 -03:00
Matheus
34b18799a2
pmm: fix bmset type
2023-05-13 20:07:24 -03:00
Matheus
d178e0012f
vmm: change kernel pf handling
2023-05-10 20:38:04 -03:00
Matheus
8913f80a0c
alloc: realloc
2023-05-09 00:05:47 -03:00
Matheus
cec3146bd5
vmm: fix lazy allocation
2023-05-08 22:16:53 -03:00
Matheus
24091f6e3f
slab: fix large slab deallocation
2023-05-07 21:23:22 -03:00
Matheus
42b28716a4
vmm: implement newcontext()
2023-05-07 16:52:29 -03:00
Matheus
9ce8bd25f5
vmm: fix getting free range at edge of spaces
2023-05-07 15:08:33 -03:00
Matheus
46bbf60ce8
vmm: file mapping
2023-05-06 19:28:09 -03:00
Matheus
fef3d97989
vmm: fragmentation checks on insert and entry freeing
2023-04-28 23:23:06 -03:00
Matheus
ff478b51ed
alloc: fix free
2023-04-23 22:05:54 -03:00
Matheus
0394165361
kernel: spinlocks
2023-04-23 17:12:05 -03:00