aboutsummaryrefslogtreecommitdiff
path: root/sys
AgeCommit message (Collapse)Author
2024-03-19kernel: syscall: Fix syscall orderIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-18kernel: sched: Fix PID assignmentIan 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-16kernel: sched: Cleanup context switch commentsIan Moffett
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: Use this_td() to get threadIan 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-15kernel: initramfs: Fix vtype logic bugIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-15kernel: vfs: Fix typo in commentIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-15kernel: initramfs: Fix indentIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-14kernel: sched: Remove useless declarationIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-14kernel: sched: Rework sched_init()Ian 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: Check for NULL instead of 0Ian Moffett
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: machdep: Remove extra whitespaceIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-13kernel/amd64: trap: Update panic messageIan Moffett
We have a scheduler now, this old message does not make sense. So it is replaced. 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/amd64: spectre: Log only onceIan 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-13kernel/amd64: machdep: Fix typoIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-11kernel/amd64: machdep: Enable SSE/SSE2 per coreIan 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: loader: CleanupIan 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-09kernel: vm_map: Account for address misalignmentIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-08kernel: fs: Fix logic bug in initramfs codeIan Moffett
Return NULL if hdr is NULL, Before, if the file is not found, 0x200 would be returned instead of NULL. 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-07kern: sched: Refactor queue and ctx switch codeQuinn Stephens
Signed-off-by: Quinn Stephens <quinn@osmora.org> Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-07kernel/amd64: trap: Parse TRAP_PAGEFLT error codeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-03-07kernel: loader: Only load user programsIan Moffett
This commit ensures user programs are loaded only. This can be changed in the future if support for ELFs that will run in kernel space is added. 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/amd64: Remove switch.SIan Moffett
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: vm_map: Remove misalignment checksIan Moffett
This commit removes misalignment checks and aligns VA and PA automatically Signed-off-by: Ian Moffett <ian@osmora.org>