initrd: warn when failing to register stuff
This commit is contained in:
parent
26324259f2
commit
58ca030711
@ -345,12 +345,20 @@ static bool initrd_register_file(InitRD::File& f, uint64_t inode)
|
|||||||
static void initrd_scan()
|
static void initrd_scan()
|
||||||
{
|
{
|
||||||
initrd_for_each_dir([](InitRD::Directory& dir) {
|
initrd_for_each_dir([](InitRD::Directory& dir) {
|
||||||
if (total_dirs >= 32) return;
|
if (total_dirs >= 32)
|
||||||
|
{
|
||||||
|
kwarnln("Failed to register directory %s: Too many directories in initrd", dir.name);
|
||||||
|
return;
|
||||||
|
}
|
||||||
uint64_t inode = total_dirs;
|
uint64_t inode = total_dirs;
|
||||||
if (initrd_register_dir(dir, inode)) dirs[total_dirs++] = dir;
|
if (initrd_register_dir(dir, inode)) dirs[total_dirs++] = dir;
|
||||||
});
|
});
|
||||||
InitRD::for_each([](InitRD::File& f) {
|
InitRD::for_each([](InitRD::File& f) {
|
||||||
if (total_files >= 32) return;
|
if (total_files >= 32)
|
||||||
|
{
|
||||||
|
kwarnln("Failed to register file %s: Too many files in initrd", f.name);
|
||||||
|
return;
|
||||||
|
}
|
||||||
uint64_t inode = total_files;
|
uint64_t inode = total_files;
|
||||||
if (initrd_register_file(f, inode)) files[total_files++] = f;
|
if (initrd_register_file(f, inode)) files[total_files++] = f;
|
||||||
});
|
});
|
||||||
@ -375,7 +383,7 @@ void InitRD::init()
|
|||||||
(void*)bootboot.initrd_ptr, Utilities::get_blocks_from_size(PAGE_SIZE, bootboot.initrd_size));
|
(void*)bootboot.initrd_ptr, Utilities::get_blocks_from_size(PAGE_SIZE, bootboot.initrd_size));
|
||||||
kdbgln("physical base at %lx, size %lx, mapped to %p", bootboot.initrd_ptr, bootboot.initrd_size, initrd_base);
|
kdbgln("physical base at %lx, size %lx, mapped to %p", bootboot.initrd_ptr, bootboot.initrd_size, initrd_base);
|
||||||
kdbgln("total blocks: %ld", get_total_blocks());
|
kdbgln("total blocks: %ld", get_total_blocks());
|
||||||
void* leak = kmalloc(4); // leak some memory so that kmalloc doesn't continually allocate and free pages
|
void* leak = kmalloc(4); // leak some memory so that kmalloc doesn't continously allocate and free pages
|
||||||
initrd_initialize_root();
|
initrd_initialize_root();
|
||||||
initrd_scan();
|
initrd_scan();
|
||||||
VFS::mount_root(&initrd_root);
|
VFS::mount_root(&initrd_root);
|
||||||
|
Loading…
Reference in New Issue
Block a user