[Letux-kernel] modprobe twl4030_* hangs

H. Nikolaus Schaller hns at goldelico.com
Thu Feb 11 12:28:22 CET 2016


Am 11.02.2016 um 12:18 schrieb H. Nikolaus Schaller <hns at goldelico.com>:

> 
> Am 11.02.2016 um 12:13 schrieb H. Nikolaus Schaller <hns at goldelico.com>:
> 
>> Hi,
>> I have found a strange thing in my latest 4.5-rc3.
>> 
>> root at letux:~# modprobe twl4030_madc_battery
>> root at letux:~# modprobe twl4030_pwrbutton   
>> ^C
>> root at letux:~# modprobe twl4030_vibra    
>> root at letux:~# modprobe twl4030_charger
>> ^C
>> root at letux:~# modprobe twl4030_madc   
>> root at letux:~# modprobe phy_twl4030_usb
>> ^C
>> root at letux:~# 
>> 
>> Some twl4030 related modules can't be modprobed and simply hang.
>> Some others work.
>> 
>> The total effect is that the kernel needs ~200 seconds to boot.
>> 
>> And I have the same on the OMAP5 (where the twl4030 modules
>> are not loaded/needed at all).
> 
> Well, there it is the bq2429x driver. And the common part is that both
> create charger nodes, registered by power_supply_register().
> 
> What is even more strange is that they show up in lsmod. But a
> second modprobe -v reports that it tries another insmod:
> 
> root at letux:~# lsmod | fgrep bq24
> bq2429x_charger        13916  1 
> root at letux:~# modprobe -v bq2429x_charger
> insmod /lib/modules/4.5.0-rc3-letux+/kernel/drivers/power/bq2429x_charger.ko 
> ^C
> root at letux:~# 
> 

I just found that modprobe understands verbosity levels:

root at letux:~# modprobe -v -v -v bq2429x_charger
modprobe: INFO: ../libkmod/libkmod.c:354 kmod_set_log_fn() custom logging function 0x7f654a6d registered
modprobe: DEBUG: ../libkmod/libkmod-index.c:790 index_mm_open() file=/lib/modules/4.5.0-rc3-letux+/modules.dep.bin
modprobe: DEBUG: ../libkmod/libkmod-index.c:790 index_mm_open() file=/lib/modules/4.5.0-rc3-letux+/modules.alias.bin
modprobe: DEBUG: ../libkmod/libkmod-index.c:790 index_mm_open() file=/lib/modules/4.5.0-rc3-letux+/modules.symbols.bin
modprobe: DEBUG: ../libkmod/libkmod-index.c:790 index_mm_open() file=/lib/modules/4.5.0-rc3-letux+/modules.builtin.bin
modprobe: DEBUG: ../libkmod/libkmod-module.c:540 kmod_module_new_from_lookup() input alias=bq2429x_charger, normalized=bq2429x_charger
modprobe: DEBUG: ../libkmod/libkmod-module.c:546 kmod_module_new_from_lookup() lookup modules.dep bq2429x_charger
modprobe: DEBUG: ../libkmod/libkmod.c:545 kmod_search_moddep() use mmaped index 'modules.dep' modname=bq2429x_charger
modprobe: DEBUG: ../libkmod/libkmod.c:392 kmod_pool_get_module() get module name='bq2429x_charger' found=(nil)
modprobe: DEBUG: ../libkmod/libkmod.c:400 kmod_pool_add_module() add 0x7f6773f0 key='bq2429x_charger'
modprobe: DEBUG: ../libkmod/libkmod-module.c:196 kmod_module_parse_depline() 0 dependencies for bq2429x_charger
modprobe: DEBUG: ../libkmod/libkmod-module.c:567 kmod_module_new_from_lookup() lookup bq2429x_charger=0, list=0x7f6770d8
modprobe: DEBUG: ../libkmod/libkmod-module.c:1374 kmod_module_get_options() modname=snd_pcsp mod->name=bq2429x_charger mod->alias=(null)
modprobe: DEBUG: ../libkmod/libkmod-module.c:1374 kmod_module_get_options() modname=snd_usb_audio mod->name=bq2429x_charger mod->alias=(null)
modprobe: DEBUG: ../libkmod/libkmod-module.c:1374 kmod_module_get_options() modname=cx88_alsa mod->name=bq2429x_charger mod->alias=(null)
modprobe: DEBUG: ../libkmod/libkmod-module.c:1374 kmod_module_get_options() modname=snd_atiixp_modem mod->name=bq2429x_charger mod->alias=(null)
modprobe: DEBUG: ../libkmod/libkmod-module.c:1374 kmod_module_get_options() modname=snd_intel8x0m mod->name=bq2429x_charger mod->alias=(null)
modprobe: DEBUG: ../libkmod/libkmod-module.c:1374 kmod_module_get_options() modname=snd_via82xx_modem mod->name=bq2429x_charger mod->alias=(null)
modprobe: DEBUG: ../libkmod/libkmod-module.c:1374 kmod_module_get_options() modname=cirrus mod->name=bq2429x_charger mod->alias=(null)
modprobe: DEBUG: ../libkmod/libkmod-module.c:1374 kmod_module_get_options() modname=mgag200 mod->name=bq2429x_charger mod->alias=(null)
modprobe: DEBUG: ../libkmod/libkmod-module.c:728 kmod_module_get_path() name='bq2429x_charger' path='/lib/modules/4.5.0-rc3-letux+/kernel/drivers/power/bq2429x_charger.ko'
modprobe: DEBUG: ../libkmod/libkmod-module.c:728 kmod_module_get_path() name='bq2429x_charger' path='/lib/modules/4.5.0-rc3-letux+/kernel/drivers/power/bq2429x_charger.ko'
insmod /lib/modules/4.5.0-rc3-letux+/kernel/drivers/power/bq2429x_charger.ko 
modprobe: DEBUG: ../libkmod/libkmod-module.c:728 kmod_module_get_path() name='bq2429x_charger' path='/lib/modules/4.5.0-rc3-letux+/kernel/drivers/power/bq2429x_charger.ko'

Maybe something in the MODULE_ALIAS is broken?

Really strange...

BR,
Nikolaus



More information about the Letux-kernel mailing list