K. Lange
|
e6313efcfc
|
kernel: cleanup kernel/arch/x86_64/user.c
|
2021-11-26 10:28:23 +09:00 |
|
K. Lange
|
35423ecc66
|
kernel: cleanup kernel/arch/x86_64/smp.c
|
2021-11-26 10:27:39 +09:00 |
|
K. Lange
|
80cf1a1f15
|
kernel: cleanup kernel/arch/x86_64/idt.c
|
2021-11-26 09:52:05 +09:00 |
|
K. Lange
|
5b16cd6ce4
|
kernel: bad ordering of list insert / wakeup caused crashes
|
2021-11-24 17:34:06 +09:00 |
|
K. Lange
|
ade7d13707
|
x86_64: fixup bad memory walk when doing backtraces
|
2021-11-24 17:33:38 +09:00 |
|
K. Lange
|
045431b2de
|
kernel: prevent modules from being loaded multiple times
|
2021-11-18 19:47:28 +09:00 |
|
K. Lange
|
fb30aae90d
|
tarfs: throw EROFS on create
|
2021-11-17 19:18:56 +09:00 |
|
K. Lange
|
d90d6e1963
|
kernel: Add simple mutex with a wait queue
|
2021-11-17 19:13:33 +09:00 |
|
K. Lange
|
f3759daadf
|
ioctl: request should be 'unsigned long'
|
2021-11-15 21:51:33 +09:00 |
|
K. Lange
|
f7a29b90af
|
kernel: Use local APIC timer for preemption on APs, not an IPI
|
2021-11-14 17:16:20 +09:00 |
|
K. Lange
|
697200013a
|
v1.99.9
|
2021-11-09 13:28:16 +09:00 |
|
K. Lange
|
a5079f93b0
|
lfbvideo: Keep resolution set by loader if none specified by args
|
2021-11-05 07:53:35 +09:00 |
|
K. Lange
|
43b6bd32e3
|
kernel: exclude serial ports from pts numbering; start numbering at 1
|
2021-11-04 19:17:21 +09:00 |
|
K. Lange
|
96cb5d9c01
|
lfbvideo: Don't map EGA/VGA text mode range as WC as apparently things don't like that
|
2021-11-01 19:07:09 +09:00 |
|
K. Lange
|
ac35ad0bbd
|
x86_64: Don't wrap version codename in quotes as we're doing that directly now
|
2021-10-30 15:24:36 +09:00 |
|
K. Lange
|
119c42077d
|
kernel: Put codename string in quotes for stylistic reasons
|
2021-10-30 08:53:49 +09:00 |
|
K. Lange
|
d6fc131912
|
kernel: Export sys_ functions so they appear in symbol table
|
2021-10-28 07:51:20 +09:00 |
|
K. Lange
|
a83d641d2c
|
mmu: Be more clear about what's happening when we run out of RAM
|
2021-10-28 07:48:25 +09:00 |
|
K. Lange
|
d79bf46731
|
fbterm: Move log to center, set bg to black
|
2021-10-26 16:14:38 +09:00 |
|
K. Lange
|
49342b7996
|
net: try to actually track received packet sizes...
|
2021-10-25 18:27:08 +09:00 |
|
K. Lange
|
073e43384c
|
kmalloc: Use existing assertion infrastructure
|
2021-10-25 18:25:21 +09:00 |
|
K. Lange
|
4b62e4ab22
|
assert: use dprintf, not printf, when printing assertion message
|
2021-10-25 18:24:49 +09:00 |
|
K. Lange
|
465c82a5f8
|
irq: Mark isr_common as global so it shows up in symbol table
|
2021-10-25 18:23:50 +09:00 |
|
K. Lange
|
1bb382de12
|
kernel: Print gs alongside other registers in panic
|
2021-10-25 18:23:33 +09:00 |
|
K. Lange
|
95ef9f02ac
|
fbterm: Support 24bpp framebuffers
|
2021-10-25 13:50:08 +09:00 |
|
K. Lange
|
8839e4357c
|
multiboot: Correctly pass bits-per-pixel from framebuffer data
|
2021-10-25 13:49:57 +09:00 |
|
K. Lange
|
f0091f8f87
|
ringbuffer: don't use heap allocator if buffer size is one page
|
2021-10-24 19:52:51 +09:00 |
|
K. Lange
|
591a074608
|
pipe: Embiggen pipe buffers
|
2021-10-24 19:39:42 +09:00 |
|
K. Lange
|
e3b713487c
|
pipe: Make pipes more direct with ring buffer usage
|
2021-10-24 18:12:20 +09:00 |
|
K. Lange
|
ca8fc639db
|
kernel: Fix gdt install clobbering symbol table, or whatever else ends up after it
|
2021-10-24 16:23:56 +09:00 |
|
K. Lange
|
ce1e9b4e03
|
socket: Purge rx queue when socket closes?
|
2021-10-23 12:42:48 +09:00 |
|
K. Lange
|
8b363c878b
|
mmu: Fixup mapping for physical memory address >4GiB
|
2021-10-23 12:19:41 +09:00 |
|
K. Lange
|
1ed5ea6404
|
net: net_udp_send() should return size of data sent
|
2021-10-22 15:39:21 +09:00 |
|
K. Lange
|
f300386d13
|
net: initial loopback interface support
|
2021-10-22 15:36:03 +09:00 |
|
K. Lange
|
3decb96169
|
v1.99.8
|
2021-10-21 11:18:42 +09:00 |
|
K. Lange
|
08820eca71
|
kernel: oops
|
2021-10-21 09:35:02 +09:00 |
|
K. Lange
|
bf6d5f765d
|
kernel: make_process_ready may be called with sleep_lock already acquired?
|
2021-10-21 08:48:26 +09:00 |
|
K. Lange
|
55835ab494
|
fbterm: Only enable scrolling by default on vga terminal
|
2021-10-20 19:39:47 +09:00 |
|
K. Lange
|
1efc36e51a
|
kernel: Fixup bad lock ordering in process_awaken_signal
|
2021-10-20 19:37:31 +09:00 |
|
K. Lange
|
b6caef5d7e
|
x86_64: Cleanup boot messages to fit in vga text mode better
|
2021-10-20 18:49:40 +09:00 |
|
K. Lange
|
0f2d7334b0
|
fbterm: VGA backend, enable scrolling by default
|
2021-10-20 18:49:07 +09:00 |
|
K. Lange
|
038727eb1a
|
x86_64: Support multiboot2 loaders
|
2021-10-20 16:03:05 +09:00 |
|
K. Lange
|
043b3797f7
|
x86_64: Mark kernel with AOUT_KLUDGE address parameters so the 64-bit ELF can be booted directly
|
2021-10-20 16:02:46 +09:00 |
|
K. Lange
|
76191f89fb
|
kernel: Print tracebacks for more fatal errors
|
2021-10-20 10:33:58 +09:00 |
|
K. Lange
|
32c3bf1825
|
insmod: Support passing arguments to modules
|
2021-10-20 10:33:35 +09:00 |
|
K. Lange
|
c366ea2dfd
|
kernel: Initial pass at new debug printf interface
|
2021-10-19 20:29:14 +09:00 |
|
K. Lange
|
7ce16a005d
|
net: Oops, we broke UDP sends
|
2021-10-13 10:50:05 +09:00 |
|
K. Lange
|
526c8fc55e
|
smp: allow command line override for where to scan for RSDP
|
2021-10-12 22:23:58 +09:00 |
|
K Lange
|
751f78ef2f
|
net: don't explode without a network
|
2021-10-12 21:15:44 +09:00 |
|
K. Lange
|
a8ca76845c
|
smp: Don't just fatal() if there's too many cores; initialize up to 32
|
2021-10-12 20:04:38 +09:00 |
|
K Lange
|
72825a7d46
|
lfbvideo: recalculate vmware memory size on display change
|
2021-10-09 22:06:31 +09:00 |
|
K. Lange
|
05e224dee7
|
kernel: Better fault reports
|
2021-10-04 20:34:42 +09:00 |
|
K. Lange
|
495d1a196a
|
kernel: Use 'Misaka' as the system named presented by the kernel
|
2021-09-30 10:37:46 +09:00 |
|
K. Lange
|
1f0d982240
|
kernel: Initial try at actual user buffer validation
|
2021-09-29 14:07:32 +09:00 |
|
K Lange
|
62368bbf44
|
tcp: Fixup socket receive buffers
|
2021-09-27 21:09:28 +09:00 |
|
K. Lange
|
fe6402ba18
|
v1.99.7
|
2021-09-27 15:31:47 +09:00 |
|
K. Lange
|
0caa949550
|
ptrace: Inform non-parent tracer when tracee exits
|
2021-09-25 07:16:47 +09:00 |
|
K Lange
|
aa8fdab570
|
ptrace: support tracing from non-parent process
|
2021-09-24 19:15:06 +09:00 |
|
K. Lange
|
41ba264cdc
|
ptrace: PTRACE_SINGLESTEP
|
2021-09-24 14:41:17 +09:00 |
|
K. Lange
|
9e19ebb93a
|
ptrace: Update status before setting suspended flag
|
2021-09-24 13:10:19 +09:00 |
|
K. Lange
|
c8a37456ec
|
ptrace: POKEDATA, permission fixes for PEEKDATA
|
2021-09-24 12:00:46 +09:00 |
|
K. Lange
|
5d7eec4cee
|
ptrace: avoid suggesting process terminated when continuing from ptrace_signal
|
2021-09-24 07:30:21 +09:00 |
|
K. Lange
|
0146b31837
|
ptrace: Allow separate tracing of signals and syscalls
|
2021-09-24 00:11:14 +09:00 |
|
K. Lange
|
8859849452
|
kernel: Acquire a lock around waitpid condition changes
|
2021-09-24 00:10:30 +09:00 |
|
K. Lange
|
470b2bfabb
|
ptrace: Catch signals, start work on debugger
|
2021-09-22 20:32:21 +09:00 |
|
K. Lange
|
6899683bb4
|
strace: Initial support for a ptrace() mechanism, strace tool
|
2021-09-22 15:33:02 +09:00 |
|
K. Lange
|
f8ba7b9002
|
syscall: PTR_VALIDATE explicitly does not check null...
|
2021-09-18 20:00:02 +09:00 |
|
K. Lange
|
44651da833
|
v1.99.6
|
2021-09-18 13:55:16 +09:00 |
|
K. Lange
|
aabbde7877
|
net: another batch of rewrites
|
2021-09-17 21:03:53 +09:00 |
|
K. Lange
|
88bcaba5e7
|
ping: shoddy implementation
|
2021-09-17 12:39:04 +09:00 |
|
K. Lange
|
e33d883ce5
|
lfbvideo: Fallback to port-IO driver if MMIO isn't available
|
2021-09-15 20:39:59 +09:00 |
|
K. Lange
|
39ebb4b6c0
|
procfs: quick-and-dirty /proc/kallsyms, missing modules
|
2021-09-13 18:56:55 +09:00 |
|
K. Lange
|
c24d743740
|
mmu: Reserve a few more initial PTs so we can support 64GiB of memory
|
2021-09-13 09:39:04 +09:00 |
|
K. Lange
|
04b21aed13
|
mmu: Actually read multiboot mmap data
|
2021-09-12 22:40:29 +09:00 |
|
K. Lange
|
0068e25073
|
pex: Cleanup pipes?
|
2021-09-12 14:04:11 +09:00 |
|
K. Lange
|
5816937516
|
pex: Actually try to close server endpoints
|
2021-09-12 13:23:38 +09:00 |
|
K. Lange
|
cce8885060
|
tmpfs: Make total block allocations available through a procfs entry
|
2021-09-10 09:28:42 +09:00 |
|
K. Lange
|
37df43dcaf
|
tcp: Time out connection after 3 attempts, reduce time between resends
|
2021-09-09 20:17:29 +09:00 |
|
K. Lange
|
b96af51342
|
tcp: handle connection refused
|
2021-09-09 20:13:48 +09:00 |
|
K. Lange
|
ab7e89baa7
|
net: Handle signals
|
2021-09-09 20:04:20 +09:00 |
|
K. Lange
|
8269614da7
|
net: Maybe allow udp binds?
|
2021-09-09 20:03:58 +09:00 |
|
K. Lange
|
c0cb37f971
|
net: ongoing network work
|
2021-09-09 19:42:19 +09:00 |
|
K. Lange
|
e842cd6aa2
|
ipv4: Don't wait so long for initial arp response
|
2021-09-09 12:23:11 +09:00 |
|
K. Lange
|
e87f09a1b4
|
piix4: move to module, only load in virtualbox
|
2021-09-09 12:22:30 +09:00 |
|
K. Lange
|
637529efff
|
tmpfs: finer-grained locks, use global mmu mapping
|
2021-09-08 22:02:54 +09:00 |
|
K. Lange
|
3af34cce04
|
ipv4: try to arp local stuff?
|
2021-09-08 19:33:20 +09:00 |
|
K. Lange
|
fd10920585
|
net: e1000 receive fixes?
|
2021-09-08 19:11:28 +09:00 |
|
K. Lange
|
a941c3a20d
|
pci: Implement PIIX4 PIRQ remapping
|
2021-09-06 21:03:00 +09:00 |
|
K. Lange
|
8a944f4a83
|
smp: Co-opt Multiboot's config_table member to sneak ACPI tables to kernel
|
2021-09-06 19:46:36 +09:00 |
|
K. Lange
|
42146f042c
|
procfs: cleanup /proc/idle format
|
2021-09-05 14:16:15 +09:00 |
|
K. Lange
|
3a08644de6
|
kernel: Higher resolution CpuPermille
|
2021-09-05 14:05:37 +09:00 |
|
K. Lange
|
2c45d0b5d0
|
kernel: times() can take NULL
|
2021-09-05 13:48:17 +09:00 |
|
K. Lange
|
bafc85f675
|
kernel: more sensible idle tracking
|
2021-09-05 11:35:38 +09:00 |
|
K. Lange
|
780aa1b534
|
top: Track multiple slices of usage, show averages
|
2021-09-05 11:04:47 +09:00 |
|
K. Lange
|
bb7b9c26d7
|
kernel: track idle task usage
|
2021-09-03 16:44:49 +09:00 |
|
K. Lange
|
f41c0717b5
|
kernel: Track relative CPU usage over one-second spans
|
2021-09-03 10:17:10 +09:00 |
|
K. Lange
|
efec80cb38
|
times: rudimentary support for process times
|
2021-09-02 23:08:18 +09:00 |
|
K. Lange
|
6eaeff3451
|
smp: Force userspace preemption on other cores.
|
2021-09-02 21:38:30 +09:00 |
|
K. Lange
|
1d4fbc41b3
|
kernel: Should not need to use temporary buffer for fxsave/rstr
|
2021-09-02 18:04:44 +09:00 |
|
K. Lange
|
98bcb40671
|
nproc: Expose processor count and use it to pick between yielding and non-yielding spin locks
|
2021-09-02 17:27:21 +09:00 |
|
K. Lange
|
783e6d69d6
|
chown: fixup semantics, support names in command
|
2021-09-02 15:10:12 +09:00 |
|
K. Lange
|
4dc97e7bf1
|
v1.99.5
|
2021-09-01 20:32:09 +09:00 |
|
K. Lange
|
a77d0ef85a
|
smp: Memory invalidation fixes
|
2021-09-01 19:55:00 +09:00 |
|
K Lange
|
403b1ecfcb
|
serial: should be owned by 'dialout' group
|
2021-08-31 22:40:49 +09:00 |
|
K. Lange
|
8984cc8f71
|
groups: First pass at support for supplementary group lists
|
2021-08-31 20:46:48 +09:00 |
|
K. Lange
|
8775a28209
|
groups: Initial support for gids.
|
2021-08-31 19:47:04 +09:00 |
|
K. Lange
|
afdf9671a6
|
vfs: Allow 'filesystems' that are partition mappers to not return a node
|
2021-08-31 16:56:18 +09:00 |
|
K. Lange
|
61b7444192
|
kernel: restore debug prints for a page fault in the kernel, since SMP failures are rare now
|
2021-08-20 17:14:40 +09:00 |
|
K. Lange
|
a34dadba37
|
kernel: fix getpgid(pid != 0)
|
2021-08-20 17:10:35 +09:00 |
|
K. Lange
|
7609912b03
|
v1.99.4
|
2021-08-20 09:24:28 +09:00 |
|
K. Lange
|
17dfed4cfd
|
kernel: use that new sleep_on_unlocking in ringbuffers
|
2021-08-16 18:29:08 +09:00 |
|
K. Lange
|
c130197ab8
|
kernel: fixup lock ordering around process_timeout_sleep
|
2021-08-16 17:20:28 +09:00 |
|
K. Lange
|
91efdaa9f7
|
xhci: convert to module
|
2021-08-08 16:37:19 +09:00 |
|
K. Lange
|
ced8bcba96
|
kernel: restore fprintf() for printing to vfs nodes (character devices)
|
2021-08-08 16:36:57 +09:00 |
|
K. Lange
|
7c7ec4689a
|
xhci: cleanup
|
2021-08-04 19:35:55 +09:00 |
|
K. Lange
|
82714d4183
|
xhci: userspace-queryable debug interface
|
2021-08-01 17:28:52 +09:00 |
|
K. Lange
|
22a6c0ca3a
|
text: Add some macros so we can more easily swap out the bitmap font
|
2021-07-22 17:06:43 +09:00 |
|
K. Lange
|
f57679e0b4
|
v1.99.3
|
2021-07-19 20:10:12 +09:00 |
|
K. Lange
|
6b308e5fc1
|
i965: Send mode change signal?
|
2021-07-19 19:50:41 +09:00 |
|
K. Lange
|
d406a6948f
|
modules: track loaded sizes so we can free modules later
|
2021-07-19 10:28:26 +09:00 |
|
K. Lange
|
9ad39394e4
|
modules: list modules in /proc/modules
|
2021-07-17 20:18:02 +09:00 |
|
K. Lange
|
236c8bacb3
|
modules: Reimplement loadable kernel modules
|
2021-07-17 18:55:54 +09:00 |
|
K. Lange
|
8e4640e1d7
|
xhci: start on controller driver
|
2021-07-14 10:44:46 +09:00 |
|
K. Lange
|
a96089e9d9
|
sysfunc: actually bother validating some values
|
2021-07-12 06:28:17 +09:00 |
|
K. Lange
|
a2d63a6125
|
ps2hid: Fixup initialization sequence; unbreaks scrollwheel in vbox
|
2021-07-08 18:46:04 +09:00 |
|
K. Lange
|
2891185341
|
net: disable debug prints during TCP connection
|
2021-07-07 19:13:33 +09:00 |
|
K. Lange
|
62128bd1aa
|
kernel: (needs review) let threads sleep on their own children?
|
2021-06-23 22:42:48 +09:00 |
|
K. Lange
|
a1065c7c47
|
vfs: ramdisk length needs to be updated on the *original* node
|
2021-06-22 07:42:10 +09:00 |
|
K. Lange
|
40821160c1
|
vfs: copied nodes should get their own refcounts
|
2021-06-22 07:41:55 +09:00 |
|
K. Lange
|
a99b958c18
|
v1.99.2
|
2021-06-20 21:25:14 +09:00 |
|
K. Lange
|
3fb82c1e85
|
net: return eof when socket is closed and no data is available
|
2021-06-19 15:50:14 +09:00 |
|
K. Lange
|
653d6a7035
|
net: select random sequence number to start
|
2021-06-19 13:11:43 +09:00 |
|
K. Lange
|
8b6d3784ea
|
tcp: fixup connect retry
|
2021-06-18 21:42:52 +09:00 |
|
K. Lange
|
ac7c4cd2c5
|
net: don't dynamically allocate hashmaps and lists?
|
2021-06-18 21:42:35 +09:00 |
|
K. Lange
|
e6721fc10f
|
pex: don't leave invalid connections with the server read/write methods?
|
2021-06-18 21:41:44 +09:00 |
|
K. Lange
|
d5358b7e97
|
net: fix bad copy in ICMP ECHO
|
2021-06-18 21:41:17 +09:00 |
|
K. Lange
|
886d1afe9e
|
net: various
|
2021-06-18 20:08:33 +09:00 |
|
K. Lange
|
71bd62d516
|
net: actually try to figure out destination hardware addresses
|
2021-06-18 18:54:34 +09:00 |
|
K. Lange
|
d8dc85e507
|
net: don't duplicate struct layout in e1000 device object
|
2021-06-18 15:20:22 +09:00 |
|
K. Lange
|
1467ec050e
|
net: various improvements to still terrible network stack
|
2021-06-16 23:14:58 +09:00 |
|
K. Lange
|
8b1973d31e
|
pci: handle setups without a host bridge?
|
2021-06-15 21:18:14 +09:00 |
|
K. Lange
|
83987b292c
|
v1.99.1
|
2021-06-15 19:50:33 +09:00 |
|
K. Lange
|
87d6784633
|
net: silence the network stack unless MISAKA_DEBUG_NET is defined
|
2021-06-15 19:29:57 +09:00 |
|
K. Lange
|
a4436581ed
|
net: hack up some fin packets
|
2021-06-15 19:19:54 +09:00 |
|
K. Lange
|
c38143fa81
|
net: silence more debug messages
|
2021-06-15 17:16:09 +09:00 |
|
K. Lange
|
fc9ca3d955
|
net: try to get the package manager working
|
2021-06-15 17:04:02 +09:00 |
|
K. Lange
|
ef1026fb40
|
net: complete most of a TCP stream?
|
2021-06-14 21:35:28 +09:00 |
|
K. Lange
|
23e1b8811e
|
net: we really need some proper blocking queue primitives
|
2021-06-14 20:13:14 +09:00 |
|
K. Lange
|
ccc6379c39
|
net: tcp: basic syn/ack receipt?
|
2021-06-14 18:55:03 +09:00 |
|
K. Lange
|
80564085e1
|
e1000: should probably keep using whatever was in the card after reset
|
2021-06-14 18:54:51 +09:00 |
|