sortix-mirror/kernel
Jonas 'Sortie' Termansen 719f44ec8a Speed up ata(4) 400 ns waits.
Waiting for any non-zero duration currently waits for at least one timer
cycle (10 ms), which is especially expensive during early boot.

The current workaround of simply reading the status 14 times seems really
suspicious although the osdev wiki documents it, but let's see how well it
works on real hardware, it's probably good enough.

Try to determine the initial selected drive to save one drive selection.
2023-12-24 13:12:46 +01:00
..
disk Speed up ata(4) 400 ns waits. 2023-12-24 13:12:46 +01:00
fs Add memusage(2). 2023-03-09 20:27:17 +01:00
gpu/bga Switch bga(4) to the new PCI API. 2022-11-16 20:22:29 +01:00
include/sortix Add kernel virtual address space usage debug information. 2023-12-24 13:12:46 +01:00
kb Include the main kernel header in some kernel files. 2022-04-26 01:08:42 +02:00
mouse Include the main kernel header in some kernel files. 2022-04-26 01:08:42 +02:00
net Debug TCP socket state listing. 2023-12-24 13:12:46 +01:00
x64 Implement threading primitives that truly sleep. 2021-06-23 22:10:47 +02:00
x86 Support i686 without SSE. 2022-01-09 23:38:16 +02:00
x86-family Decrease PS/2 timeouts. 2023-12-24 13:12:46 +01:00
.gitignore Replace mkinitrd(1) with tar(1). 2023-07-12 21:45:11 +02:00
addralloc.cpp Add kernel virtual address space usage debug information. 2023-12-24 13:12:46 +01:00
alarm.cpp Fix handling of overflow and non-canonical values in timespec APIs. 2021-06-22 21:48:27 +02:00
clock.cpp Fix absolute timers triggering in the wrong order. 2022-12-03 22:43:33 +01:00
com.cpp Fix concurrent serial port read and write. 2016-11-03 22:10:45 +01:00
com.h
copy.cpp Implement threading primitives that truly sleep. 2021-06-23 22:10:47 +02:00
crc32.cpp Add networking stack. 2022-12-11 13:40:34 +01:00
descriptor.cpp Fix system calls returning errno values instead of setting errno. 2023-04-06 23:26:10 +02:00
dnsconfig.cpp
dtable.cpp Fix dtable allocation overflow on INT_MAX. 2022-06-09 22:47:06 +02:00
elf.cpp Optimize is_power_of_two. 2016-11-06 17:42:13 +01:00
end.cpp
fcache.cpp
fsfunc.cpp
hostname.cpp Fix sethostname(2) nul termination. 2022-10-23 14:42:10 +02:00
identity.cpp Fix setuid(2) and setgid(2) not setting the effective user and group. 2021-07-27 00:46:42 +02:00
initrd.cpp Remove mkinitrd(8). 2023-08-26 14:15:12 +02:00
initrd.h
inode.cpp Fix chown(2) not supporting -1 to not set the owner and group. 2022-01-15 20:48:54 +01:00
interlock.cpp Implement threading primitives that truly sleep. 2021-06-23 22:10:47 +02:00
interrupt.cpp Implement threading primitives that truly sleep. 2021-06-23 22:10:47 +02:00
io.cpp Fix system calls returning errno values instead of setting errno. 2023-04-06 23:26:10 +02:00
ioctx.cpp
kernel.cpp Add kernel heap allocation tracing debug facility. 2023-12-24 13:12:46 +01:00
kernelinfo.cpp Add kernel virtual address space usage debug information. 2023-12-24 13:12:46 +01:00
kernelinfo.h Add options to kernelinfo(2). 2023-12-19 00:05:42 +01:00
kthread.cpp Fix deadlocks and lost wakeups in threading primitives. 2022-12-10 21:29:23 +01:00
lfbtextbuffer.cpp Implement threading primitives that truly sleep. 2021-06-23 22:10:47 +02:00
lfbtextbuffer.h Fix LFBTextBuffer GetChar starting worker thread when paused. 2018-08-06 23:59:35 +02:00
libk.cpp Abort on overlapping memcpy. 2021-05-30 23:48:19 +02:00
linebuffer.cpp Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
linebuffer.h
log.cpp Add cache-aware memory mapping functions. 2017-02-19 12:13:32 +01:00
logterminal.cpp Support \e[6n for reporting cursor position. 2023-02-26 12:10:58 +01:00
logterminal.h Support \e[6n for reporting cursor position. 2023-02-26 12:10:58 +01:00
Makefile Add em(4) driver. 2023-01-09 23:58:19 +01:00
memorymanagement.cpp Add memusage(2). 2023-03-09 20:27:17 +01:00
mtable.cpp
multiboot.h
op-new.cpp Add kernel heap allocation tracing debug facility. 2023-12-24 13:12:46 +01:00
palette.h
panic.cpp Fix technical typo. 2017-04-08 22:20:03 +02:00
partition.cpp Implement file descriptor passing. 2021-12-31 22:24:11 +01:00
partition.h Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
pci-mmio.cpp
pci.cpp Add PCI scanning functions and busmastering functions. 2017-02-19 12:10:59 +01:00
pipe.cpp Fix the the. 2023-02-17 23:25:40 +01:00
poll.cpp Fix kernel deadlock in ppoll(2). 2021-07-14 15:41:28 +02:00
process.cpp Add memusage(2). 2023-03-09 20:27:17 +01:00
psctl.cpp Add memory statistics to struct psctl_stat. 2023-03-09 20:27:18 +01:00
ptable.cpp
pty.cpp Fix pty write and read logic. 2022-12-03 22:36:34 +01:00
pty.h
random.cpp
refcount.cpp Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
registers.cpp
resource.cpp
scheduler.cpp Fix deadlocks and lost wakeups in threading primitives. 2022-12-10 21:29:23 +01:00
segment.cpp Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
signal.cpp Fix system calls returning errno values instead of setting errno. 2023-04-06 23:26:10 +02:00
sockopt.cpp Relicense Sortix to the ISC license. 2016-03-05 22:21:50 +01:00
string.cpp Include the main kernel header in some kernel files. 2022-04-26 01:08:42 +02:00
syscall.cpp Add memusage(2). 2023-03-09 20:27:17 +01:00
textbuffer.cpp
textterminal.cpp Fix saving and restoring console cursor position. 2017-01-22 22:28:58 +01:00
textterminal.h
thread.cpp Fix deadlocks and lost wakeups in threading primitives. 2022-12-10 21:29:23 +01:00
time.cpp Rename CLOCK_BOOT to CLOCK_BOOTTIME. 2022-02-22 18:01:57 +00:00
timer.cpp
tty.cpp Fix system calls returning errno values instead of setting errno. 2023-04-06 23:26:10 +02:00
tty.h Add support for sessions. 2016-11-23 22:30:47 +01:00
uart.cpp
uart.h
user-timer.cpp Fix handling of overflow and non-canonical values in timespec APIs. 2021-06-22 21:48:27 +02:00
vga.cpp
vga.h
vgafont.f16 Allow bootloader bitmap framebuffer modesetting. 2016-01-08 19:56:11 +01:00
vgatextbuffer.cpp
vgatextbuffer.h
video.cpp Refactor graphical resolution changes. 2016-11-27 11:18:48 +01:00
vnode.cpp Implement file descriptor passing. 2021-12-31 22:24:11 +01:00
worker.cpp