summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
38 hourskernel: Sort out switch MI/MD switch logicIan Moffett
Certain operations dealing with context switches are better off being implemented as machine dependent routines which allows us to be flexible with what we can do, as well as the extra benefit of requiring less workarounds to keep things MI. Signed-off-by: Ian Moffett <ian@osmora.org>
38 hourskernel: Move 'g_nthreads' to kern_accnt.cIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
38 hourskernel: Add initial accounting logicIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
39 hourskernel: proc: Decrement proc count on exitIan Moffett
Previously, our process counter was monotonic (wuh oh!). We want to be sure that it decrements when a process exits. - Rename nthreads to g_nthreads as a global - Atomically increment on enter and decrement on exit Signed-off-by: Ian Moffett <ian@osmora.org>
39 hourssys: atomic: Add 64-bit operationsIan Moffett
- Add atomic_inc_64() - Add atomic_dec_64() - Add atomic_load_64() - Add atomic_store_64() Signed-off-by: Ian Moffett <ian@osmora.org>
40 hourskernel: filedesc: Ensure 'fd' is valid during r/wIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
43 hourskernel: et131x: Initialize internal RX/TX buffersIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
43 hourskernel: et131x: Disable loopbacks and watchdogIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 daysusr: libc: Add math.h + musl math impl portIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskernel: Add initial MII register defsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskernel: et131x: Add initial MAC initializationIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskernel: et131x: Create netcard state structIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 daysdocs: et131x: Add MAC.hfdp bit definitionsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 daysdocs: et131x: Add information about MAC regsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskernel: phy: Give more control over LED stateIan Moffett
Allow finer control over which LEDs to toggle and how they should be toggled. Signed-off-by: Ian Moffett <ian@osmora.org>
4 dayskernel: phy: Add initial et131x sourcesIan Moffett
Refer to share/docs/hw/et131x.txt Signed-off-by: Ian Moffett <ian@osmora.org>
4 daysdocs: Begin ET131X NIC reverse engineering workIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel/amd64: Track interrupt countIan Moffett
Keep track of how many times an interrupt fires, this can be used for interrupt statistics later on. Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel/amd64: Get CPU family + modelIan Moffett
The CPU family ID and model number are sometimes useful in order to detect the presence of certain CPU features as well as detecting CPU specific quirks. Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel/amd64: cpu_check_feat() -> cpu_get_info()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel/amd64: Add I8042_POLL kconf(9) optionIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: Move crypto specifics to sys/crypto/*Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: sched: Ensure 'ci' is not NULLIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: exit: Detach console on exitIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel: time: Leave interrupts be on sleepIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 daysusr.bin: login: Remove useless debug messageIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel/amd64: Return NULL if IA32_GS_BASE is unsetIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 daysusr: date: Read back date after writingIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
6 dayskernel: Avoid using kprintf() during panicIan Moffett
Avoid using kprintf() during a system panic event as it relies on internal locking that may hang the system preventing diagnostics from being logged Signed-off-by: Ian Moffett <ian@osmora.org>
6 dayskernel: Make panic screen configurableIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
7 daysproject: Bump version to 2.3Ian Moffett
- [kernel: ahci]: Improve AHCI driver startup time [0] - [kernel: nvme]: Add NVMe write support [1] - [kernel]: Do not defer storage driver init [2] - [kernel: ansi]: Implement screen clearing sequence [3, 4] - [kernel: cons]: Add /ctl/console/attr [5] - [kernel: nvme]: Add logpage + SMART support [6] - [kernel]: Add initial multi-user support [7, 8, 9] - [kernel]: Add crypto /dev/random [10] - [kernel]: Add 'login' program [11, 12] - [kernel: initramfs]: Use OMAR rev 2 [13] Commits referenced: [0]: 4f3ff976f5fd90f2401eddf2c81d3226c7de45ed [1]: 37b755d8592dcb6b669bb5b9696b012ba0a07e50 [2]: 8a96646bdd6d5f91b2288cca68f3e552229e1b21 [3]: 7ca4b1c0537ec41f4b7b05ad61b48ff0bb29af8b [4]: 7c509b9edc1ab8fbf36f586182042331868ac11e [5]: 7f7535710b23ec984f1f0fa3dab8ea4a081a0bab [6]: 45c3cbf482005e430e4d207410c7b5bc398cd87a [7]: 020a6fe2a92d06f42b2ff2b0a7c919d7341923fe [8]: ac46a8f0dfb4d303d75a43cff4994b724fd4cf4d [9]: fc8c9bc5029d006d531341c5306b49fc081bcfd7 [10]: 252c90732709447ad33bbf329fc47d584cd23f37 [11]: f49ab9ebefb9d1e707ee568fe2837f24de046f68 [12]: 0a400811f9c85584e7897a822dc70b5c9c38192d [13]: 76144f33cb68efe347a26384c1cf69ec8351fbb0 ... Signed-off-by: Ian Moffett <ian@osmora.org>
7 daysdocs: Add 'programs' section to READMEIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
7 daysusr.bin: Add 'sleep' programIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
7 daysusr: getconf: Add NAME_MAX, PATH_MAX and SSIZE_MAXIan Moffett
- Add additional limit defines - Expand 'val' to 32-bits Signed-off-by: Ian Moffett <ian@osmora.org>
7 dayskernel: limits: Add NAME_MAXIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
7 dayskernel: vnode: Refactor definitionsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
7 dayskernel: initramfs: Set file mode to OMAR modeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
7 dayskernel: initramfs: Use OMAR rev 2 (latest)Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
7 daysbuild: Update wallpaperIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
7 daysusr: date: Allow time-setting by userIan Moffett
If the user believes the system time is off, they may now invoke 'date' with a time string "hh:mm:ss" to write it to the clock. Signed-off-by: Ian Moffett <ian@osmora.org>
7 dayskernel/amd64: i8042: Decode ESCAPE keyIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
8 daysusr: login: Parse custom shell pathIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
8 daysusr: login: Clean up check_user() logicIan Moffett
- Rely on have_* state vars - Duplicate 'p' after creation Signed-off-by: Ian Moffett <ian@osmora.org>
8 dayskernel/sched: Undo sched_yield() changesIan Moffett
- Keep old sched_yield() logic as newer logic caused issues on QEMU - TODO: Actually fix and test Signed-off-by: Ian Moffett <ian@osmora.org>
8 daysusr: login: Remove default 'USERNAME' defineIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
8 daysusr: login: Only rely on default shell for nowIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
8 dayskernel: exit: Clear out file descriptors on reapIan Moffett
Ensure all file descriptors are freed and their respective vnodes released. Signed-off-by: Ian Moffett <ian@osmora.org>
8 dayskernel: sched: Greatly simplify yield logicIan Moffett
The purpose of yielding to the scheduler is to tell it you want to preempt early in order to not starve processes while waiting for I/O. We can trigger the timer earlier on for stability as a ~10 usec delay should not be too terrible. Signed-off-by: Ian Moffett <ian@osmora.org>
8 daysusr: login: Re-allow char echoing after bad loginIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
8 daysusr: login: Implement 'password' input/hashingIan Moffett
- Update /etc/passwd to contain the hash for 'root' - Implement password checking login in the 'login' program - Add information about default credentials in the README Signed-off-by: Ian Moffett <ian@osmora.org>