Opened 3 years ago

Last modified 3 years ago

#18244 accepted defect

procd/init cause reboot loop if kmodloader /etc/modules-boot.d takes to long

Reported by: jj+openwrt@… Owned by: blogic
Priority: normal Milestone:
Component: base system Version: Barrier Breaker 14.07
Keywords: Cc:


/sbin/init currently does AFAIK the following (shortened, some steps left out):
1st watchdog_init()
2nd pid = fork(), for kmodloader /etc/modules-boot.d/
3rd waitpid(pid, NULL, 0) for pid in 2nd
4th preinit()

When the waitpid() does not return in time, the watchdog will trigger and reset the device.
This might happen on devices with a larger amount of modules in /etc/modules-boot.d/ and/or slow boot devices for example with software SPI.
The process of kmodloader takes longer as it scans as many modules it needs to satisfy all dependencies.
It's happening on my TP-W8970, when adding some modules like for more filesystems or other USB hardware to the base image.

Attachments (0)

Change History (2)

comment:1 Changed 3 years ago by blogic

  • Owner changed from developers to blogic
  • Status changed from new to accepted

ok, thanks for pointing this out, i added the todo on my stack. please be patient for a couple of days while i cook up and test a patch

comment:2 Changed 3 years ago by anonymous

Add possible relation to #14436.

Add Comment

Modify Ticket

as accepted .

E-mail address and user name can be saved in the Preferences.

Note: See TracTickets for help on using tickets.