Catch stream heisenbug, initialize scheduler IRQs before smp_init (), reduce stream max size
All checks were successful
Build documentation / build-and-deploy (push) Successful in 3m29s

This commit is contained in:
2026-03-19 00:14:06 +01:00
parent 53034bc091
commit 50a352cdac
6 changed files with 10 additions and 10 deletions

View File

@@ -78,6 +78,9 @@ void bootmain (void) {
struct device* temp0 = device_find ("temp0");
vfs_create_volume (thiscpu->kproc, &rctx, "temp", FS_FAT16, temp0, true);
irq_attach (&proc_irq_sched, NULL, SCHED_PREEMPT_TIMER);
irq_attach (&proc_irq_sched, NULL, CPU_REQUEST_SCHED);
smp_init ();
proc_init ();

View File

@@ -12,8 +12,6 @@
#include <sys/smp.h>
void do_sched (struct proc* proc, spin_lock_t* cpu_lock, uint64_t lockflags) {
__asm__ volatile ("cli");
uint64_t fp;
spin_lock (&proc->lock, &fp);
@@ -32,5 +30,7 @@ void do_sched (struct proc* proc, spin_lock_t* cpu_lock, uint64_t lockflags) {
spin_unlock (&proc->lock, fp);
spin_unlock (cpu_lock, lockflags);
__asm__ volatile ("cli");
do_sched1 ((void*)&regs, cr3);
}