Commit Graph

933 Commits

Author SHA1 Message Date
K. Lange
017d715de1 Replace PCI ID Database with our own slimmed down version 2018-04-21 23:09:19 +09:00
K. Lange
abafa47204 Remove erroneously added kernel/symbols.S 2018-03-19 15:33:07 +09:00
K. Lange
ede46b6a06 Remove erroneously added .gdb_history 2018-03-19 15:31:10 +09:00
K. Lange
1355502e6c Reorganize headers 2018-03-19 11:38:11 +09:00
K. Lange
627ebc3195 Fixup std lib includes for full build from scratch with just basic gcc 2018-03-16 22:40:23 +09:00
K. Lange
3f4293d357 Merge kernel 2018-03-16 21:56:19 +09:00
Kevin Lange
c95e2ad599 Bump version for very minor release update 2017-10-12 12:03:13 +09:00
Kevin Lange
fcb55d095c Bump version to 1.2.1 for new syscall 2017-07-12 19:33:32 +09:00
Kevin Lange
3296e1b14c Add chown syscall 2017-07-12 18:25:04 +09:00
Kevin Lange
364c8e2910 New package manager for 1.2 2017-07-10 18:53:52 +09:00
Kevin Lange
7094b16df8 Fix some file creation in root 2017-07-05 22:45:32 +09:00
Kevin Lange
584feb12e5 Support clearing ramdisk from memory 2017-07-05 22:45:24 +09:00
Kevin Lange
e447a143f5 Bump to 1.1.2 2017-03-28 21:48:17 +09:00
Kevin Lange
ecdb6f37d8 Bump to 1.1.1 2017-03-22 18:41:51 +09:00
Kevin Lange
d15633ecb4 Bump to 1.1.0 2017-02-25 18:58:12 +09:00
Kevin Lange
b03bbec080 Support display stride so we can do arbitrary resolutions in vmware
This is a terrible back. We need to do things better with handling the
display, possibly so we can do support for true 24bpp modes at some
point (though this isn't high priority). Ultimately, the _fullscreen
graphics support needs to be removed and embedded into 1) a separate
library, or 2) Yutani, the only thing that does fullscreen video modes
anyway. We can continue to render into a generic graphics buffer -
double buffered for the nested modes, non-double-buffered for the full
screen mode (and then blit with surface blits). For now, however, this
is at least functioning.
2017-02-22 14:45:54 +09:00
Kevin Lange
2de88539f4 cld going into irq/isr handlers 2017-02-20 00:19:38 +09:00
Kevin Lange
51ff3df1e0 Bump to 1.0.4 2017-02-18 23:19:23 +09:00
Kevin Lange
dca9c2b9d3 Add an ioctl interface for setting video mode 2017-02-18 22:19:35 +09:00
Kevin Lange
e3d5994233 Gateways and ARP, how about that? 2017-02-18 00:34:16 +09:00
Kevin Lange
ef6527caa6 Fix recursive PCI bus scan 2017-02-17 22:12:45 +09:00
Kevin Lange
caf46a5866 Bump to 1.0.3 2017-02-15 22:06:30 +09:00
Kevin Lange
a8890a5f2d Use PIT mode 2 instead of 3
Works around what is believed to be a bug in VirtualBox where the PIT
*and* RTC were slowing down while playing quake to roughly half their
expected rates. I have no idea why this fixes the problem, but it does,
and with no expected ill effects elsewhere. With the future 64-bit
kernel, ToaruOS will no longer being using the PIT, so it doesn't really
matter anyway.
2017-02-10 14:55:24 +09:00
Kevin Lange
fc66bf325a Bump kernel for audio interface updates 2017-02-08 22:11:21 +09:00
Ofek
353ae32697 Fix unoptimized loop when rounding to page size in sys_sbrk (#145) 2017-02-06 14:23:51 +09:00
Kevin Lange
27d866f682 #pragma once 2017-02-04 20:03:00 +09:00
Kevin Lange
3d5eeb8a81 Version bump. 2017-02-03 17:28:30 +09:00
Kevin Lange
06dd1c9218 Reduce log level on message about fswait2 2017-02-03 08:38:52 +09:00
Kevin Lange
22279b02f0 Fix some edge-case tty lockups 2017-02-01 22:29:33 +09:00
Kevin Lange
6b63a05471 Final version bump for 1.0.0 2017-01-30 14:28:32 +09:00
Kevin Lange
beb5f165ab Bump kernel to 0.99.27 2017-01-29 20:32:30 +09:00
Kevin Lange
2f5e83da6b Track process start time 2017-01-29 19:30:07 +09:00
Kevin Lange
64c8e85324 Make cursor-off use a system call 2017-01-29 18:48:10 +09:00
Kevin Lange
0647e3a19a Support fswait in sockets (maybe?) 2017-01-28 23:34:40 +09:00
Kevin Lange
ba1506bd2d Bump kernel version for upgrade notices 2017-01-27 22:56:56 +09:00
Kevin Lange
7c6004b1a8 Bump kernel (for several updates from today) 2017-01-26 22:27:46 +09:00
Kevin Lange
ae64757838 Cleanup timeout sleep nodes if something else woke us up 2017-01-26 18:57:08 +09:00
Kevin Lange
80f85db895 Add a syscall to change cmdline (for thread names) 2017-01-26 16:15:43 +09:00
Kevin Lange
fc08dbc8e8 Bump kernel. 2017-01-24 21:52:28 +09:00
Kevin Lange
984db775a1 Bump kernel 2017-01-23 23:01:40 +09:00
Kevin Lange
b15ed83f20 Other random kernel fixes. 2017-01-23 22:59:59 +09:00
Kevin Lange
e1cc8a936b Fix an issue where trying to wake up a zombie would do exactly what that sounds like it would do 2017-01-23 22:59:31 +09:00
Kevin Lange
736e886ea8 Fix a big leak with fswait 2017-01-23 19:51:21 +09:00
Kevin Lange
28c3ee0fa6 Bump kernel 2017-01-22 20:35:59 +09:00
Kevin Lange
c0ef0105fe Bump kernel for new module stuff 2017-01-21 15:38:02 +09:00
Kevin Lange
42e25d1231 Support for checking network status from userspace 2017-01-21 12:23:17 +09:00
Kevin Lange
34c24e5275 wake up init when it is receiving new children 2017-01-20 14:49:48 +09:00
Kevin Lange
dd0457ee2e Bump kernel version for incoming changes 2017-01-20 13:46:41 +09:00
Kevin Lange
5b2171a4fb Track mount types for vfs mounts 2017-01-20 13:45:46 +09:00
Kevin Lange
be263cd3cb Bump kernel version to v0.99.17 2017-01-17 23:52:42 +09:00
Kevin Lange
1d53e401c4 Actually set a dev value for stat 2017-01-17 23:50:06 +09:00
Kevin Lange
8fc3c07f4b Support fswait in (unix) pipes 2017-01-14 12:00:46 +09:00
Kevin Lange
dd823cd835 Bump kernel to 0.99.12 2017-01-08 20:12:48 +09:00
Kevin Lange
a284789c75 Close file descriptors >=3 on exec. 2017-01-08 19:43:34 +09:00
Kevin Lange
77e5c5c943 Change when proc->cmdline is set in exec 2017-01-08 19:42:54 +09:00
Kevin Lange
ca8d3af8c7 Bump kernel version to 0.99.11 2017-01-08 17:39:54 +09:00
Kevin Lange
ffe78daf18 Add timeouts to fswait (with new fswait2) and fix signals when fswaiting 2017-01-07 23:53:58 +09:00
Kevin Lange
217b7182a6 Actually bump version to something meaningful 2017-01-06 19:34:51 +09:00
Kevin Lange
6e0562b78e Improve some debug messages 2017-01-06 19:34:09 +09:00
Kevin Lange
7301a3c29a Bump kernel version 2017-01-06 19:14:19 +09:00
Kevin Lange
7d47cab8ab Support fswait in tty 2017-01-06 19:01:22 +09:00
Kevin Lange
665343e636 First pass at a select-like fs wait function 2017-01-06 18:30:17 +09:00
Kevin Lange
2dbf655c9c Fix unixpipe permissions (and thus fgrep, prepend, etc.) 2017-01-05 22:21:49 +09:00
Kevin Lange
ce875e1938 Bump kernel version to 0.99.7 2016-12-30 19:57:31 +09:00
Kevin Lange
364f70cd8b Detect some bad cases with process queuing 2016-12-30 18:46:29 +09:00
Kevin Lange
80664e0f8e Add stacktrace to kernel assertion failure message 2016-12-30 18:46:14 +09:00
Kevin Lange
325e059af2 Fix init kernel stack size 2016-12-30 18:13:10 +09:00
Kevin Lange
22390fce45 Support building with -fsanitize=undefined 2016-12-26 18:02:47 +09:00
Kevin Lange
8b1acc5b66 Various random fixes 2016-12-26 18:02:47 +09:00
Kevin Lange
1e5b785b0d GCC and Binutils upgrade attempt 2016-12-26 09:48:37 +09:00
Kevin Lange
9901f15d70 Allow esoteric boot configs 2016-12-24 14:06:05 +09:00
Kevin Lange
8ef8dec183 Add link support in tmpfs 2016-12-19 23:28:03 +09:00
Kevin Lange
58f1ad6bc5 Call readlink_fs instead of node directly 2016-12-19 23:27:45 +09:00
Kevin Lange
26c78333ec Rough, incomplete VFS permissions 2016-12-14 21:21:32 +09:00
Kevin Lange
b7da7a4f73 Fix debug backdoor to not crash on null format string 2016-12-10 20:09:21 +09:00
Kevin Lange
39da315a48 Build a dynamic userspace.
- Builds (terrible, broken) shared versions of (most) third-party
  dependencies for the userspace.
- Fixes several incorrect dependency mappings in auto-dep.
- Makes auto-dep understand shared libraries (and that some things,
  like OSMesa, don't work with them).
- init must be built static because reasons
- some libraries were cleaned up to fix dependency calculation
- version bumped to 0.99.0 (saten) for eventual 1.0.0 release.
- CDs no longer drop teapot, select-wallpaper (space is available
  for them - we could even make the images smaller)
2016-12-03 17:10:48 +09:00
Kevin Lange
c56d40f132 Try to fix args in linker 2016-12-03 00:14:49 +09:00
Kevin Lange
270f3324a0 New kernel elf loader 2016-12-02 17:53:53 +09:00
Kevin Lange
03962d45a5 Attempt load dynamic binaries with the loader 2016-12-02 12:54:01 +09:00
Kevin Lange
f57be44604 Add a dumb syscall to force an address+size to be mapped in userspace 2016-12-01 23:23:31 +09:00
Kevin Lange
5e39becfce Add missing Elf32_Dyn definition to elf header 2016-11-29 21:34:21 +09:00
Kevin Lange
124ea87658 Fix missing element in elf phdr struct 2016-11-24 19:36:25 +09:00
Kevin Lange
e827580b79 Add ugly hack to support loader 2016-11-24 19:36:15 +09:00
Peter Harliman Liem
6073d23abe Fix potential leak in mkdir_fs error path 2016-11-21 19:35:16 +09:00
Kevin Lange
8ac9742906 Add a userspace interface for loading modules 2016-10-26 14:11:12 +09:00
Kevin Lange
ce34e6a40f Disable FPU lazy switching (it's breaking bochs) 2016-09-26 15:25:30 +09:00
Kevin Lange
6297bac128 Preview mkdir from creating directories that already exist 2016-09-18 21:19:20 +09:00
Kevin Lange
51fd0a83b0 Various fixes for Python 2016-09-15 19:18:57 +09:00
Kevin Lange
f0f4489d87 remove duplicate bus scan? 2016-09-13 16:24:24 +09:00
Kevin Lange
779909ae5b Disable PCI-PCI bridge recursion (it's broken) 2016-09-13 15:59:09 +09:00
Kevin Lange
caef2a0d27 Disable caching for MMIO regions 2016-09-09 09:25:39 +09:00
Kevin Lange
e7f7a40da3 Bump version to v0.14.1 2016-09-04 13:55:43 +09:00
Kevin Lange
48c9f2ffc0 Bump to v0.14.0 and update codename 2016-09-01 10:21:37 +09:00
Kevin Lange
6027f71d60 Add some new entries to the PCI device list 2016-08-31 10:16:27 +09:00
Kevin Lange
ee81679c40 Break out vbox guest driver
- Add general support for changing display resolution.
- Support display resolution changes in the vmware svga driver.
- Add a small module to add a set_mode command to the debug shell.
- Include these modules on CDs.
- Include the vidset module in debug/qemu targets.
2016-08-30 16:37:17 +09:00
Kevin Lange
a9fabe285d Initial support for changing display modes 2016-08-30 15:45:58 +09:00
Fabien Siron
01ebba1a52 Improve code readability of the cmos driver 2016-01-27 19:00:14 +00:00
Fabien Siron
135c881e4d Improve cmos reading 2016-01-27 17:51:46 +00:00
Kevin Lange
1257e0424c Bump version to 0.13.0 and change codename to mikoto 2015-12-15 22:41:22 -08:00
Kevin Lange
d8f9c3e085 remove incorrect description of strtok_r 2015-12-15 22:36:20 -08:00
Kevin Lange
a649abbdb8 Fix a leak when spawning threads 2015-11-05 22:28:52 -08:00
Kevin Lange
4893d4899b Bump version to v0.12.0 2015-11-05 22:19:18 -08:00
Kevin Lange
292f535a6a Fix critical directory release refcount issue 2015-11-05 22:18:49 -08:00
Kevin Lange
43629a0b13 Fix a minor memory leak due to improper file pointer operations 2015-11-05 21:44:41 -08:00
Kevin Lange
e195298e5b multiboot graphics request should consist of longs not bytes 2015-09-18 20:00:58 -07:00
Kevin Lange
19a35b3c8e Cleanup fetch, net_recv 2015-08-05 20:03:44 -07:00
Kevin Lange
ea5ea6ec2e Hacky method of tracking disconnects so we can EOF 2015-08-03 21:54:55 -07:00
Matt White
a27d971fef No longer place TCP ACKs with no payload in receive queue 2015-07-31 10:57:51 -07:00
Kevin Lange
93549c53f6 hacked-together irc stuff 2015-07-31 09:30:20 -07:00
Matt White
46345f9c29 Rudimentary support for multiple connections. Seq/Acks are probably not great 2015-07-31 00:41:35 -07:00
Matt White
4547929321 Can successfully send valid SYN packet 2015-07-30 22:40:21 -07:00
Matt White
f34285a3de Removed bit fields and change to doing some bit math to remove compiler warnings 2015-07-30 17:02:14 -07:00
Matt White
de43948e73 Fix wrong struct name 2015-07-30 16:54:07 -07:00
Matt White
19c5b581ab Remove dependency of net module on rtl module 2015-07-30 16:46:08 -07:00
Matt White
3447ffcb03 Super basic outline of separating network stuff from rtl module into net module 2015-07-30 15:48:31 -07:00
Kevin Lange
514fef6b9f Bump version to v0.11.1 2015-07-12 19:08:38 +09:00
Kevin Lange
a0c1350369 Fix next_pid to not reallocate PIDs immediately 2015-07-02 21:39:43 -07:00
Kevin Lange
ce05bdbff7 Actually fix the math on bitsets 2015-07-02 21:25:11 -07:00
Kevin Lange
cb8f821489 Fix incorrect default state and bit math for bitsets 2015-07-02 14:56:35 -07:00
Kevin Lange
b2d0021a63 Terrible hack for combining modules [ci skip]
Please don't use this, it's a workaround for iPXE module limits.
2015-06-23 20:15:19 -07:00
Kevin Lange
3b48ab5be1 Bump version to 0.11.0 2015-06-10 21:00:47 -07:00
Kevin Lange
20367b15f9 Fixups for merging symlinks 2015-06-10 20:59:27 -07:00
Mike Gerow
a7f27a604d Cleaned up debug_print calls 2015-06-05 00:38:13 -07:00
Mike Gerow
84846c6dac Added symlink support to ext2 module 2015-06-03 19:08:38 -07:00
Mike Gerow
e8689bb0c6 Added symlink support to vfs and plumbed it to syscall layer
This commit requires a rebuild of the toolchain.
2015-06-03 19:07:08 -07:00
Kevin Lange
7f07d7403e Fix very broken comparisons 2015-06-02 21:29:28 -07:00
Kevin Lange
212efda313 Fix a bad memset that was breaking reboots on ramdisks 2015-06-02 12:15:38 -07:00
Kevin Lange
20c9535d29 Clean up termemu and add a new kernel vga logging mechanism 2015-06-01 00:20:02 -07:00
Kevin Lange
027d979fbc Fix incorrectly 0'd userspace entry pointer; bad pointer validate in stat_node 2015-05-29 16:12:04 -07:00
Kevin Lange
a4d749a91a fix memcpy/memset clobbers, etc. 2015-05-26 23:38:21 -07:00
Kevin Lange
3bf0d0ed89 Mark off 0.10.1 2015-05-21 14:39:00 -07:00
Dale Weiler
d6ff2dc428 Better PID allocation technique 2015-05-21 16:23:31 -04:00
Dale Weiler
e27cb1b96f Align stack pointer on kernel proper entry to 16-byte. Eliminate dead-lock in frame allocator on OOM. Formatting. 2015-05-21 15:09:42 -04:00
Dale Weiler
a699c91ddd ISR/IRQ cleanup 2015-05-21 13:22:06 -04:00
Dale Weiler
0dbd5ab089 Cleanup and improve spin lock code 2015-05-21 04:28:14 -04:00
Dale Weiler
3820512357 Merge branch 'strawberry-dev' of github.com:klange/toaruos into strawberry-dev 2015-05-21 03:15:19 -04:00
Dale Weiler
57de8417fa formattng 2015-05-21 03:13:47 -04:00
Dale Weiler
cb0e217c31 Cleaned up, optimized and rewrote crucial parts of libc for the kernel, fixed a few bugs as well. 2015-05-21 03:12:09 -04:00
Kevin Lange
1654d371e3 Marking off 0.10.0 2015-05-20 20:34:20 -07:00
Dale Weiler
12ef7fba8b Optimizations 2015-05-20 23:32:21 -04:00
Dale Weiler
6e1a594adc Wait for IO on IRQ remap. 2015-05-20 23:08:58 -04:00
Dale Weiler
5ddbbf8199 Some IRQ cleanup 2015-05-20 19:52:19 -04:00
Dale Weiler
82d706f453 Rewrite IDT code 2015-05-20 18:53:03 -04:00
Dale Weiler
51fbc77e3f Eliminate superfluous strlen pass in vasprintf 2015-05-20 18:21:39 -04:00
Dale Weiler
d6a7db993e Use PUSH macro when setting up thread argument and return address 2015-05-20 16:53:14 -04:00
Dale Weiler
333d97bc7a Fix system calls 2015-05-20 16:45:30 -04:00
Dale Weiler
c9f9625722 Use uintptr_t and document sys_mount arguments which are not used with a TODO 2015-05-20 14:59:47 -04:00
Dale Weiler
117225b626 Cleanup system call code and improve branch prediction. 2015-05-20 14:14:51 -04:00
Dale Weiler
31900155fb ring3 switch code in user.S now 2015-05-20 04:46:10 -04:00
Dale Weiler
ca5a319ee6 Validate syscall inputs 2015-05-20 03:34:39 -04:00