How to get details of all modules / drivers that w

2019-02-23 23:53发布

I need the sequence of modules/drivers that are invoked|initialized|probed during the kernl boot.

Can you please let me know if any flash command-line option available to get this sequence ?

2条回答
倾城 Initia
2楼-- · 2019-02-24 00:12

After enabling both initcall_debug=1 and ignore_loglevel=1 on the kernel command line, I am able to see the module initialization start and end times. The below link has more details on this.

https://chengyihe.wordpress.com/2015/12/13/android-kernel-enable-initcall_debug-to-debug-initcall/

查看更多
女痞
3楼-- · 2019-02-24 00:21

Passing the option "initcall_debug" on the kernel command line will cause timing information to be printed to the console for each init routine of built-in drivers. The initcalls are used to initialize statically linked kernel drivers and subsystems and contribute a significant amount of time to the Linux boot process. (Loadable modules are not available until after the root filesystem has been mounted.)

The output looks like:

calling  tty_class_init+0x0/0x44 @ 1
initcall tty_class_init+0x0/0x44 returned 0 after 9765 usecs
calling  spi_init+0x0/0x90 @ 1
initcall spi_init+0x0/0x90 returned 0 after 9765 usecs

Reference: http://elinux.org/Initcall_Debug

Addendum

Specifying the kernel parameter "ignore_loglevel" along with the "initcall_debug" will ensure that the information will be displayed during boot.

查看更多
登录 后发表回答