Files
RedBear-OS/recipes/core/kernel/recipe.toml
T
vasilito ba5e010bb7 P21-P23: boot daemon panic fixes, x2APIC MADT fallback, rootfs hard dep on drivers
P21: Replace 67 panic-grade calls across 9 boot daemon files with
graceful error handling. Affected: ps2d, inputd, fbcond, fbbootlogd.

P22: Add x2APIC MADT fallback for processors with LocalApic entries
instead of LocalX2Apic entries. QEMU KVM boots now correctly detect
all vCPUs via zero-extended APIC ID fallback.

P23: Change 50_rootfs.service from requires_weak to requires on
40_drivers.target, ensuring redoxfs waits for disk drivers before
attempting filesystem mount. This fixes the boot race where rootfs
mount failed before drivers were ready, causing init to have no
userland services after switchroot.
2026-05-19 02:18:17 +03:00

55 lines
2.9 KiB
TOML

[source]
git = "https://gitlab.redox-os.org/redox-os/kernel.git"
rev = "866dfad0"
patches = [
"../../../local/patches/kernel/redbear-consolidated.patch",
"../../../local/patches/kernel/P8-msi.patch",
"../../../local/patches/kernel/P8-msi-foundation-v2.patch",
"../../../local/patches/kernel/P2-rebrand-start-message.patch",
"../../../local/patches/kernel/P0-eventfd-kernel.patch",
"../../../local/patches/kernel/P0-rsdp-checksum.patch",
"../../../local/patches/kernel/P1-mkfifo-fifo-support-v2.patch",
"../../../local/patches/kernel/P1-ioapic-hpet-nmi-v2.patch",
"../../../local/patches/kernel/P9-numa-topology.patch",
"../../../local/patches/kernel/P9-proc-lock-ordering.patch",
"../../../local/patches/kernel/P9-percpu-context-switch.patch",
"../../../local/patches/kernel/P9-broadcast-tlb-shootdown.patch",
"../../../local/patches/kernel/P9-ioapic-irq-affinity.patch",
"../../../local/patches/kernel/P10-irq-affinity-wiring.patch",
"../../../local/patches/kernel/P11-mcs-lock.patch",
"../../../local/patches/kernel/P12-range-tlb-flush.patch",
"../../../local/patches/kernel/P13-priority-inheritance.patch",
"../../../local/patches/kernel/P14-numa-topology.patch",
"../../../local/patches/kernel/P15-1-ap-cpu-id-race.patch",
"../../../local/patches/kernel/P15-4-mcs-pi-ordering.patch",
"../../../local/patches/kernel/P15-10-tlb-range-ordering.patch",
"../../../local/patches/kernel/P16-3-max-cpu-256.patch",
"../../../local/patches/kernel/P16-1-sipi-timing.patch",
"../../../local/patches/kernel/P16-4a-sdt-checksum.patch",
"../../../local/patches/kernel/P16-4b-madt-validation.patch",
"../../../local/patches/kernel/P17-2a-percpu-waiting.patch",
"../../../local/patches/kernel/P17-2b-transitive-pi.patch",
"../../../local/patches/kernel/P17-4-configurable-preempt.patch",
"../../../local/patches/kernel/P17-1-numa-selection.patch",
"../../../local/patches/kernel/P17-3-sched-affinity.patch",
"../../../local/patches/kernel/P17-3-syscall-dispatch.patch",
"../../../local/patches/kernel/P19-2-irq-debug.patch",
# P20: x2APIC ICR mode fix (32-bit dest field for x2APIC, 8-bit for xAPIC)
"../../../local/patches/kernel/P20-x2apic-icr-mode-fix.patch",
# P21: x2APIC SMP bring-up fix — skip 8-bit LocalApic entries when x2APIC
# is active (BSP ID mismatch causes all APs to be skipped on bare metal Intel)
"../../../local/patches/kernel/P21-x2apic-smp-fix.patch",
# P22: x2APIC MADT fallback — when x2APIC is active but MADT has no
# LocalX2Apic entries (QEMU, some BIOS), fall back to processing LocalApic
# entries with zero-extended IDs using x2APIC 64-bit ICR format
"../../../local/patches/kernel/P22-x2apic-madt-fallback.patch",
]
[build]
template = "custom"
script = """
make -f ${COOKBOOK_SOURCE}/Makefile
mkdir -pv "${COOKBOOK_STAGE}/usr/lib/boot"
cp -v kernel "${COOKBOOK_STAGE}/usr/lib/boot"
"""