Load modules after initgraph

This commit is contained in:
2026-10-19 19:24:47 +02:00
parent 4985a2a7b9
commit 3b7bae534d
3 changed files with 4 additions and 4 deletions
+3
View File
@@ -8,6 +8,7 @@
#include <zinnia/init.h> #include <zinnia/init.h>
#include <zinnia/initgraph.h> #include <zinnia/initgraph.h>
#include <zinnia/irq.h> #include <zinnia/irq.h>
#include <zinnia/module.h>
#include <zinnia/percpu.h> #include <zinnia/percpu.h>
#include <zinnia/print.h> #include <zinnia/print.h>
#include <zinnia/sched.h> #include <zinnia/sched.h>
@@ -29,6 +30,8 @@ static void kernel_main_task(uintptr_t arg0) {
// Finish the initgraph. // Finish the initgraph.
initgraph_run(nullptr, info); initgraph_run(nullptr, info);
module_init();
// TODO: Try to run init. // TODO: Try to run init.
assert(info->num_files >= 1, "No init executable provided"); assert(info->num_files >= 1, "No init executable provided");
-1
View File
@@ -373,4 +373,3 @@ static void pci_stage_init(struct boot_info*) {
} }
INIT_TASK(pci_stage, "dev.pci", pci_stage_init); INIT_TASK(pci_stage, "dev.pci", pci_stage_init);
INIT_DEPENDS(pci_stage, mem_stage); INIT_DEPENDS(pci_stage, mem_stage);
INIT_ENTAILS(pci_stage, module_stage);
+1 -3
View File
@@ -90,10 +90,8 @@ struct module {
#define THIS_MODULE (struct module*)nullptr #define THIS_MODULE (struct module*)nullptr
struct boot_info; struct boot_info;
void module_init(struct boot_info* info); void module_init();
errno_t module_load(const void* data, size_t length, const char* cmdline, struct module** out); errno_t module_load(const void* data, size_t length, const char* cmdline, struct module** out);
errno_t module_unload(struct module* mod); errno_t module_unload(struct module* mod);
struct module* module_find(const char* name); struct module* module_find(const char* name);
INIT_EXTERN(module_stage);