internal buffer overflow in init...

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



OK, this is the original problem I was trying to figure with the debug
version of init.  In house we have an app that was starting a process 
manager from init.  It was starting after the sysinit entry and before
the runlevel script entries (it needed to be around when the runlevel
scripts were ran to respond to requests from application rc scripts to 
start there processes).  The entry looked something like this:


	# System initialization.
	si::sysinit:/etc/rc.d/rc.sysinit

>	pm:4:respawn:/sbin/procmgr

	l0:0:wait:/etc/rc.d/rc 0
	l1:1:wait:/etc/rc.d/rc 1
	l2:2:wait:/etc/rc.d/rc 2
	l3:3:wait:/etc/rc.d/rc 3
	l4:4:wait:/etc/rc.d/rc 4
	l5:5:wait:/etc/rc.d/rc 5
	l6:6:wait:/etc/rc.d/rc 6

This worked fine sometimes, but other times it would not get ran 
at all, and init would not continue on and run the runlevel 4 rc 
scripts.  I created the file:

	/etc/initscript

Which gets called by init as a proxy for starting processes if it exists,
and I could see that it would call the rc.sysinit stuff, but it would
never call the process manager when the problem occured.  I then put
a debug version of init on the system (the subject of the previous email)
and eventually when I got the debug version rebooting I saw the following:


	Enabling local filesystem quotas:  [  OK  ]
	Enabling swap space:  [  OK  ]
	INIT: chld_handler: unknown child 67 exited.
	INIT: Checking for children to start"(E*¥_chld_handler: unknown child 375 exited.
	INIT: SYSINIT -> BOOT

And there she sat.  Note it had ran rc.sysinit, and then it caught a 
sigchild from an orphaned child of rc.sysinit or one of its children.
After that it starts checking to see what it needs to start next.
Note, in that ouytput we have a little bit of garbage (an internal buffer 
overflow?).  After it prints "SYSINIT -> BOOT", no more output occurs,
and since it has not ran the rc scripts (or are started the gettys) you 
have system that is effectively hung.

Any ideas of where I should look in the init code or how I might debug 
this further?  

Thanks...james



_______________________________________________
Redhat-devel-list mailing list
Redhat-devel-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/redhat-devel-list

[Index of Archives]     [Kernel Newbies]     [Red Hat General]     [Fedora]     [Red Hat Install]     [Linux Kernel Development]     [Yosemite News]

  Powered by Linux