Mintsuki
1276c44024
docs: Update ChangeLog and README.md for 11.4.1
Check for compilation failures / Check for compilation failures (push) Has been cancelled
v11.4.1
2026-04-20 18:12:00 +02:00
Mintsuki
c0a0bed8f8
tools/limlzpack: Use int32_t for suffix array indices
2026-04-20 18:02:58 +02:00
Mintsuki
b1c28f00e4
tools/limlzpack: Write CRC header as little-endian on any host
2026-04-20 18:02:58 +02:00
Mintsuki
94912265ec
fs/iso9660: Require sector-aligned directory sizes
2026-04-20 18:02:57 +02:00
Mintsuki
89ce18ca5c
fs/iso9660: Require full entry length to fit in buffer in next_entry
2026-04-20 18:02:57 +02:00
Mintsuki
65a4eaed9d
sys/lapic: Skip MADT type 4 NMI entries for x2APIC UIDs above 0xfe
2026-04-20 18:02:57 +02:00
Mintsuki
ff63204fc9
stage1/decompressor: Ensure limlz streams always end on a literal token
2026-04-20 18:02:57 +02:00
Mintsuki
6239cb53f3
build: Bump PicoEFI commit
2026-04-20 18:02:40 +02:00
Mintsuki
770b18e077
docs: Update ChangeLog and README.md for 11.4.0
v11.4.0
2026-04-19 00:58:48 +02:00
Mintsuki
9f72d0796e
Revert "uefi: Call Apple set_os protocol to keep iGPU alive on dual-GPU Macs"
...
This reverts commit c871e24388 .
2026-04-19 00:38:31 +02:00
Mintsuki
015d01d4be
protos/multiboot2: Bound information_request tag size to header area
2026-04-19 00:38:31 +02:00
Mintsuki
de17e9448e
protos/multiboot1: Validate ELF section entry size before casting
2026-04-19 00:38:31 +02:00
Mintsuki
5ff4e28ff5
lib/elf: Overflow-check symbol offset and compare against symtab_size
2026-04-19 00:38:31 +02:00
Mintsuki
cb29442a85
menu, lib/bli: Raise menu entry path buffer limit from 256 to 1024 bytes
2026-04-19 00:37:39 +02:00
Mintsuki
47d0f207fb
fs/iso9660: Fix multi-extent splicing on non-Rock-Ridge images
2026-04-19 00:37:09 +02:00
Mintsuki
1ca8be92b8
bootstrap: Bump limine-protocol commit
2026-04-19 00:36:18 +02:00
Mintsuki
7e5bdaae2e
lib/libc: Ensure the __builtin_* versions of the 4 core mem*() functions are preferred
2026-04-19 00:36:18 +02:00
Mintsuki
c7b26f1fde
mm/vmm: Mask physical address bits in RISC-V pte_new
2026-04-19 00:36:18 +02:00
Mintsuki
935430a152
mm/mtrr: Gate fixed-range MTRR access on MTRRCAP.FIX capability bit
2026-04-19 00:36:18 +02:00
Mintsuki
301aa7774d
protos/limine: Validate .limine_reqs pointers lie within kernel image
2026-04-19 00:36:18 +02:00
Mintsuki
e0b5fd0d21
sys/cpu_riscv: Validate RHCT hart_info offsets array bounds
2026-04-19 00:36:18 +02:00
Mintsuki
d8895a258b
fs/fat32: Skip deleted directory entries in LFN parser
2026-04-19 00:36:18 +02:00
Mintsuki
6f6564d40d
fs/iso9660: Require matching filenames on multi-extent continuations
2026-04-19 00:36:18 +02:00
Mintsuki
03ad4a421c
fs/iso9660: Verify directory flag before descending into subdirectory
2026-04-19 00:36:18 +02:00
Mintsuki
4744bdbd27
lib/elf: Check image_size against SIZE_MAX in elf32_load_elsewhere
2026-04-19 00:36:18 +02:00
Mintsuki
843f029664
lib/elf: Validate dt_pltrelsz is a multiple of rela_ent
2026-04-19 00:36:18 +02:00
Mintsuki
16401fb825
lib/elf: Validate rela_size is a multiple of rela_ent
2026-04-19 00:36:18 +02:00
Mintsuki
8a1cf6310f
mm/vmm: Fix higher-half address for aarch64 5-level paging
2026-04-19 00:36:18 +02:00
Mintsuki
3eea3043a2
test: Drop LIMINE_API_REVISION macro which is no longer a thing
2026-04-19 00:36:18 +02:00
Mintsuki
37701de02b
build: Simplify BIOS stage1 decompressor build system
...
It is now a single assembly file so it can be simplified.
2026-04-19 00:35:14 +02:00
Mintsuki
18f08ed399
build: Remove .cache and compile_commands.json on distclean
2026-04-19 00:35:14 +02:00
Mintsuki
0fb6bb6c7c
host/limine: Fix empty_lba leak on error during GPT-to-MBR conversion
2026-04-19 00:35:14 +02:00
Mintsuki
a9b148ed74
protos/limine: Check return value of framebuffer memmap_alloc_range
2026-04-19 00:35:14 +02:00
Mintsuki
07d20ac135
fs/iso9660: Move sysarea pointer computation after bounds check
2026-04-19 00:35:14 +02:00
Mintsuki
f69b2b5c67
sys/cpu: Add memory clobber to LoongArch IOCSR accessors
2026-04-19 00:35:14 +02:00
Mintsuki
57d8647e55
protos/efi_boot_entry: Bound description scan to buffer size
2026-04-19 00:35:14 +02:00
Mintsuki
a71d7111fe
mm/pmm: Add pointer alignment check to pmm_free
2026-04-19 00:35:14 +02:00
Mintsuki
caad1ecfe4
sys/cpu: Fix misleading comment in TSC calibration
2026-04-19 00:35:14 +02:00
Mintsuki
d3456116ac
lib/getchar: Deduplicate timer event recreation in ESC handler using restart label
2026-04-19 00:35:14 +02:00
Mintsuki
851352d7d1
lib/misc: Fix out-of-bounds reads in get_absolute_path backward scans
2026-04-19 00:35:14 +02:00
Mintsuki
0556f4bfb4
lib/config: Re-examine shifted character after whitespace/CR removal
2026-04-19 00:35:14 +02:00
Mintsuki
05e8144c9b
lib/elf: Avoid undefined pointer arithmetic in relocation patching
2026-04-19 00:35:14 +02:00
Mintsuki
3042d4fa74
protos/limine: Fix request scan loop bound to not read past image_size_before_bss
2026-04-19 00:35:14 +02:00
Mintsuki
48cc492436
mm/pmm: Restart sanitise_entries outer loop after entry deletion
2026-04-19 00:35:14 +02:00
Mintsuki
1511a8dc95
lib/elsewhere: Skip past source range on overlap instead of advancing one page
2026-04-19 00:35:14 +02:00
Mintsuki
80c399f9b3
decompressor: Fix off-by-one truncating last character of error message
2026-04-19 00:33:37 +02:00
Mintsuki
4b057bcc88
lib/bli: fix various bugs in timeout and entry control
2026-04-19 00:30:53 +02:00
programmerlexi
959f763a9f
lib/bli: implement entry control
2026-04-19 00:30:19 +02:00
programmerlexi
bc5d1e4b8f
lib/bli: implement timeout control
2026-04-19 00:30:19 +02:00
Kamila Szewczyk
9c3ead9386
decompressor: gzip/tinf -> limlz
...
removes external dependency on tinf by replacing the compression algorithm with a simpler, faster, smaller and more auditable fixed-width LZ77 encoding purpose-tailored to x86 code mixed with data.
before: decompressor.bin 2,492 bytes (tinf dependency) with .text 0x875 and .rodata 0x13c bytes each.
after: decompressor.bin consists only of .text, 0xe6-byte decompressor; 90.8% reduction in decompressor volume.
the dependency on gzip during compile-time is replaced by host/limlzpack.c, a Lempel-Ziv encoder in 275 SLoC that uses a suffix array matchfinder (prefix-doubling in mathcal O(n log^2 n) and Storer-Szymanski backwards parse. the fixed-width formats packets as [F][LLLL][MMM], favouring a literal-skewed distribution with F switching between one-byte and two-byte offsets (favouring recent statistics).
integrity checking is done via crc32 with the polynomial 0xEDB88320, reflected.
the effective loss in compression ratio by using a tremendously simpler and less packed with edge cases algorithm causes a compression ratio hit well below 1KB, factoring in the stub sizes.
also adds new machinery for host cc detection per review.
2026-04-19 00:29:09 +02:00