#include <bmk/app.h>
+#include <rumprun-base/netbsd_initfini.h>
+
int bmk_havenet;
/*
}
void
-bmk_beforemain(void)
+bmk_mainthread(void *notused)
{
char *argv[] = {"bmk_main", 0};
int rv;
+ _netbsd_init();
rumpkern_config();
printf("=== calling main() ===\n\n");
rv = main(1, argv);
printf("=== main() returned %d ===\n\n", rv);
- /* XXX: just fall somewhere */
+ _netbsd_fini();
}
#include <bmk-core/printf.h>
#include <bmk-core/queue.h>
-#include <rumprun-base/netbsd_initfini.h>
-
unsigned long bmk_membase;
unsigned long bmk_memsize;
return 0;
}
-static void
-bmk_mainthread(void *notused)
-{
-
- _netbsd_init();
- bmk_beforemain();
- _netbsd_fini();
-}
-
void
bmk_main(struct multiboot_info *mbi)
{
bmk_cpu_init();
bmk_isr_init();
- /* enough already, jump to main thread */
+ /* enough bootstrap already, jump to main thread */
bmk_sched_init(bmk_mainthread, NULL);
}