mirror of
https://github.com/ipxe/ipxe
synced 2025-12-19 19:49:45 +03:00
[init] Show startup and shutdown function names in debug messages
Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
@@ -111,6 +111,7 @@ static void remove_devices ( int booting __unused ) {
|
||||
}
|
||||
|
||||
struct startup_fn startup_devices __startup_fn ( STARTUP_NORMAL ) = {
|
||||
.name = "devices",
|
||||
.startup = probe_devices,
|
||||
.shutdown = remove_devices,
|
||||
};
|
||||
|
||||
@@ -36,6 +36,9 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
|
||||
/** "startup() has been called" flag */
|
||||
static int started = 0;
|
||||
|
||||
/** Colour for debug messages */
|
||||
#define colour table_start ( INIT_FNS )
|
||||
|
||||
/**
|
||||
* Initialise iPXE
|
||||
*
|
||||
@@ -69,11 +72,15 @@ void startup ( void ) {
|
||||
|
||||
/* Call registered startup functions */
|
||||
for_each_table_entry ( startup_fn, STARTUP_FNS ) {
|
||||
if ( startup_fn->startup )
|
||||
if ( startup_fn->startup ) {
|
||||
DBGC ( colour, "INIT startup %s...\n",
|
||||
startup_fn->name );
|
||||
startup_fn->startup();
|
||||
}
|
||||
}
|
||||
|
||||
started = 1;
|
||||
DBGC ( colour, "INIT startup complete\n" );
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -96,12 +103,16 @@ void shutdown ( int flags ) {
|
||||
|
||||
/* Call registered shutdown functions (in reverse order) */
|
||||
for_each_table_entry_reverse ( startup_fn, STARTUP_FNS ) {
|
||||
if ( startup_fn->shutdown )
|
||||
if ( startup_fn->shutdown ) {
|
||||
DBGC ( colour, "INIT shutdown %s...\n",
|
||||
startup_fn->name );
|
||||
startup_fn->shutdown ( flags );
|
||||
}
|
||||
}
|
||||
|
||||
/* Reset console */
|
||||
console_reset();
|
||||
|
||||
started = 0;
|
||||
DBGC ( colour, "INIT shutdown complete\n" );
|
||||
}
|
||||
|
||||
@@ -685,6 +685,7 @@ static void shutdown_cache ( int booting __unused ) {
|
||||
|
||||
/** Memory allocator shutdown function */
|
||||
struct startup_fn heap_startup_fn __startup_fn ( STARTUP_EARLY ) = {
|
||||
.name = "heap",
|
||||
.shutdown = shutdown_cache,
|
||||
};
|
||||
|
||||
|
||||
@@ -181,5 +181,6 @@ struct init_fn serial_console_init_fn __init_fn ( INIT_CONSOLE ) = {
|
||||
|
||||
/** Serial console startup function */
|
||||
struct startup_fn serial_startup_fn __startup_fn ( STARTUP_EARLY ) = {
|
||||
.name = "serial",
|
||||
.shutdown = serial_shutdown,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user