summaryrefslogtreecommitdiff
path: root/sys/include
AgeCommit message (Collapse)Author
2024-03-19kernel: syscall: Fix syscall orderIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-18kernel: Add copyin() and copyout() routinesIan Moffett
This commit adds two new functions, copyin() and copyout() for kernel to userspace access and vice versa. These functions ensure the userspace address being accessed actually belongs to the process running by performing address range checks, thereby preventing bad addresses being passed to syscalls. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-17kernel: loader: Keep track of program addr rangeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-17kernel: vm: Add vm_range structureIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-16kernel,libc: syscall: Improve syscall codeIan Moffett
- Remove the SYS_debug syscall - First syscall starts at 1 Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-16kernel: syscall: Remove syscall_args.retIan Moffett
It is better to just return a value within the syscall handler and have that passed down to __syscall() like that Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-15kernel: Add basic file descriptor supportIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-15kernel: sched: Add routine to get current threadIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-15kernel: vfs: Implement vfs_path_to_node()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-15kernel: vfs: Add fs capabiltiesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-15kernel: vfs: Allow optional fs store within vnodeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-14kernel: Add support for syscallsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-14kernel: sched: Add exit routineIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-14kernel/amd64: pmap: Add pmap_free_vas()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-14kernel: sched: Keep track of stack and privilegeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-14kernel: vm: Add routine to get kernel vasIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-13kernel/amd64: machdep: Add processor_free_pcb()Ian Moffett
Add routine to deallocate resources within the process control block. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-13kernel/amd64: machdep: Add context switch helperIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-13kernel/amd64: machdep: Add pcb init codeIan Moffett
This commit adds a processor specific routine which sets up the Process Control Block for a thread Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-13kernel: proc: Add Process Control Block structureIan Moffett
This is to be implemented per arch and has arch specific thread information. For example, on the AMD64 port, this can contain things like an x87 FPU save area Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-13kernel/amd64: cpu: Add fxsave/fxrstor helpersIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-13kernel: sched: Improve stack init codeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-11kernel/amd64: Add control register r/w helpersIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-10kernel/amd64: trap: Add stack-segment fault ISRIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-07kernel: sched: Add support for user threadsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-07kernel: Require VAS arg in vm + loader refactorIan Moffett
This commit adds vas argument to VM mapping functions as well as changing how mapping is done in the loader. This commit also fixes weird error handling and parses needed PHDRs within the loader Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-06kernel: kern_loader: Add AT_* definesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-01kernel: vm_map: Add vm_map_destroy()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-01kernel: mount: Update sys/mount.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-01kernel: vfs: Add wrappers over VFS operationsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-01kernel: initramfs: Add support with VFS + USTARIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-01kernel/amd64: vfs_subr: Add path parsing helperIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-01kernel: vfs: Update vnode structureIan Moffett
Added vnode operations structure, removed some unused fields to clean up, and added new fields. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-01kernel: vfs: Remove useless structureIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-01kernel: vfs: Return -1 on vfs_hash_path() failureIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-01kernel: vfs: Simplify mounting logicIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-29kernel/amd64: frame: Add missing includeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-29kernel/amd64: machdep: Add wrappers over CLI/STIIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-29kernel/amd64: pmap: Add user pte flagIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-29kernel/amd64: pmap: Add routine to switch vasIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-29kernel: vm: vm_get_bsp_ctx() -> vm_get_ctx()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-29kernel: vm: Add more documentationIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-28kernel: vfs: Move mountlist_entry to vfs_cache.cIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-28kernel: Add ksyms.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-28kernel: Add initial VFS implementationIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-28kernel: errno: Update errno.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-26kernel: Add initial ELF loader implementationIan Moffett
This is the initial ELF loader implementation, this will obviously need some fixups and refactoring in the future but it works as of now. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-26kernel: pmap: Use PROT_ instead of PMAP_ prefixIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-26kernel: Add elf.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-02-26kernel: Add strcmp()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>