diff --git a/limine-pxe.bin b/limine-pxe.bin index 024e20c7..8d2e26d5 100644 Binary files a/limine-pxe.bin and b/limine-pxe.bin differ diff --git a/limine.bin b/limine.bin index 774e3217..ef6639b2 100644 Binary files a/limine.bin and b/limine.bin differ diff --git a/stage2.map b/stage2.map index c996646c..d9c5f4ff 100644 Binary files a/stage2.map and b/stage2.map differ diff --git a/stage2/fs/file.c b/stage2/fs/file.c index 6606e3cf..491fdde5 100644 --- a/stage2/fs/file.c +++ b/stage2/fs/file.c @@ -81,7 +81,7 @@ void *freadall(struct file_handle *fd, uint32_t type) { memmap_alloc_range((uint64_t)(size_t)fd->fd, fd->size, type, false); return fd->fd; } else { - void *ret = ext_mem_alloc(fd->size); + void *ret = ext_mem_alloc_aligned_type(fd->size, 4096, type); if (fd->read(fd->fd, ret, 0, fd->size)) { panic("freadall error"); } diff --git a/stage2/lib/uri.c b/stage2/lib/uri.c index 56f3167b..bb88e4f2 100644 --- a/stage2/lib/uri.c +++ b/stage2/lib/uri.c @@ -209,7 +209,7 @@ bool uri_open(struct file_handle *fd, char *uri) { if (compressed && ret) { struct file_handle compressed_fd = {0}; fread(fd, &compressed_fd.size, fd->size - 4, sizeof(uint32_t)); - compressed_fd.fd = ext_mem_alloc(compressed_fd.size); + compressed_fd.fd = ext_mem_alloc_aligned(compressed_fd.size, 4096); void *src = ext_mem_alloc(fd->size); fread(fd, src, 0, fd->size); if (tinf_gzip_uncompress(compressed_fd.fd, src, fd->size))