summaryrefslogtreecommitdiff
path: root/src/sys
AgeCommit message (Collapse)Author
25 hourskern: vfs: Add 'vtype' spec to vop_create_argsIan Moffett
This commit adds a vtype field to the file creation arguments to allow the underlying vnode type to be specified. Signed-off-by: Ian Moffett <ian@osmora.org>
27 hourskern: cons: Add horizontal tab renderingIan Moffett
Implements support for the tab ('\t') characters Signed-off-by: Ian Moffett <ian@osmora.org>
43 hourskern: Add SYS_lseek system callIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
43 hourskern: filedesc: Implement lseek() functionIan Moffett
The lseek() function allows the call to resposition the file offset using a specific whence value to govern offsetting semantics Signed-off-by: Ian Moffett <ian@osmora.org>
43 hourskern: tmpfs: Implement getattr vop for tmpfsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
43 hourskern: vfs: Add vop_getattr() for vnodesIan Moffett
The vop_getattr() allows the caller to obtain information about a file represented by a specific vnode Signed-off-by: Ian Moffett <ian@osmora.org>
47 hourskern: tmpfs: Use real length for EOF trackingIan Moffett
Use the actual amount of bytes inside the tmpfs entry for the length tracking. Signed-off-by: Ian Moffett <ian@osmora.org>
47 hourskern: tmpfs: Add tmpfs read callbackIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
47 hourskern: tmpfs: Add tmpfs write callbackIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
47 hourskern: Add kernel realloc() functionIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2 dayskern: fs: Add initial tmpfs implementationIan Moffett
Supported VOPs as of now: - lookup() - create() - reclaim() Signed-off-by: Ian Moffett <ian@osmora.org>
2 dayskern: devfs: Fix typo in VFS ops structureIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2 dayskern: filedesc: Add O_CREAT flag for fd_open()Ian Moffett
Add an O_CREAT flag to the ABI headers so that files can be created in the VFS. Signed-off-by: Ian Moffett <ian@osmora.org>
2 dayskern: vfs: Return vnode upon path parsing endIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2 dayskern: vfs: Implement non image-fs namei lookupsIan Moffett
This commit adds supports for full lookups and path traversal when FS_ATTR_IMAGE is unset. We've also added a NAMEI_CREATE flag to create as it traverses. Signed-off-by: Ian Moffett <ian@osmora.org>
2 dayskern: vfs: Add 'create' virtual file operationIan Moffett
The create VOP allows the caller to create a node within the parent directory of a filesystem represented by a vnode. Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern/amd64: trap: Copy trapframe on syscall entryIan Moffett
Ensure that the trapframe in the PCB is the latest, upon kernel entry we copy it so it isn't stale. Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: proc: Fix commentIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern/amd64: mp: Add idle threads per coreIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern/amd64: i8042: Add option to poll keyboardIan Moffett
Some hardware may not work too well with the i8042 and interrupts, as a mitigation, we've added an option to poll instead of using interrupts Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern/amd64: proc: Don't dequeue procs in idle loopIan Moffett
There is no need to dequeue any processes in the idle loop as this happens once per timer interrupt Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: init: Initialize scheduler before modulesIan Moffett
Some modules may rely on kernel threads, therefore we'll need the scheduler up before we start them Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern/amd64: proc: md_proc_yield -> md_proc_idleIan Moffett
Improve naming to be less confusing Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern/amd64: Introduce kernel threadsIan Moffett
Introduces kernel threads. by using the proc_ktd() function, one can spawn a CPL 0 running thread to the desired code. Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: filedesc: Add close() system callIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: vfs: Add reclaim callback to vnodeIan Moffett
The reclaim callback simply reclaims any filesystem specific resources used with vnodes back to the operating system. Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: omar: Make OMAR reads offset awareIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: vfs: Make vnode r/w operations offset awareIan Moffett
Adds offset handling to the vnode read and write callbacks. Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: Add SYS_read system call for file I/OIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: omar: Implement VFS read vopIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: namei: Return vnode before exiting functionIan Moffett
If there is a file that is found, we want to return the result before we return from the function, fixes issue with uninitialized vnodes on lookups Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: namei: Return -NOENT at function endIan Moffett
If we go through the entire function without getting a vnode, then there is no file to be found Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: vfs: Add vnode operation for readsIan Moffett
Introduces a read callback wrapper implementation for vnodes to simplify file reading Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: omar: Set vnode ops per looked up nodeIan Moffett
Everytime a look up is performed, we should set the vnode operations on the resulting vnode Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: filedesc: Don't stop searching without fdIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: filedesc: Remove outdated commentIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskern: vfs: Add NULL check for write vopIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskern: dms: Add DMS QUERY opcode for devinfoIan Moffett
Add a new QUERY operation code that is used to fetch information about a specific disk. Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayslibc: Add DMS I/O syscall interfaceIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskern: dms: Add initial DMS engine sourcesIan Moffett
The DMS engine handles performing I/O based on specific opcodes given to it and drives the callback wrappers. Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskern: ahci: Implement DMS read interfaceIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskern: dms: Make DMS block size awareIan Moffett
In order to safely copy between disk and host memory through a programming interface, DMS must be aware of the hardware disk block size Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskern: ahci: Don't hardcode block sizesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskern: ahci: Register SATA drives to DMSIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskern: Add initial DMS frameworkIan Moffett
DMS stands for Disk Management and Supervision, drivers can register themselves to DMS so that they can be looked up and operated on. Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskern: ahci: Correct buffer order during ahci r/wIan Moffett
Move to the buffer given to us if there it is a read, move from the buffer given to us if it is a write Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskern: ahci: Implement r/w of SATA drivesIan Moffett
Introduces reading and writing of SATA drives via a bufargs structure to describe the buffer as well as its attributes Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskern: proc: Check argc after checking envblkIan Moffett
Fixes a crash with using this syscall Signed-off-by: Ian Moffett <ian@osmora.org>
6 dayskern: ahci: Add cmdslot allocation + identifyIan Moffett
Implements command slot allocation, command submission and the ATA identify command Signed-off-by: Ian Moffett <ian@osmora.org>
6 dayskern: ahci: Allocate raw physical memoryIan Moffett
No need to overcomplicate things for now, just use a simple vm_alloc_frame() for DMA allocations Signed-off-by: Ian Moffett <ian@osmora.org>