Hi, all, I set a variable to true just before calling the ramdisk_exeucte_cmd (which is /init in this case) in the kernel_init function, And added printk in schedule() function so that it prints something it is called and when the previous variable is true. And found the program stops after the schedule function is called. Like this. Hello! i=115 Hello! i=116 Helloschedule! schedule! I checked the timer interrupt number was given correctly in the device tree (that’s why schedule was called by the timer..). I stopped the experiment to do something else but will resume it next week by adding some prints. If anyone has any idea about what might be wrong, please tell me. Thanks for reading. Chan Kim From: Chan Kim <ckim@xxxxxxxxxx> I had mistakenly omitted ‘-static’ option when making init program.(repeated Hello! Print). So now the board output looks like this. (...) ### point 106-1 Run /init as init process ### point 106-2, ret = 0 Hello! i=0 Hello! i=1 Hello! i=2 ... Hello! i=115 Hello! i=116 Hello! i=117 He <=== hangs. So the running the ‘init’ program (whether it’s a script or a binary program) is ok. The binary ‘init’ program stops after printing Hello 117 times so there seems to be more basic problem in H/W or device tree. And when the init script ran ‘exec /bin/sh’, the shell didn’t start so ‘running exec inside a script’ can have a problem. If anyone has a suggestion or advice, I welcome it. Thank you! Chan Kim |
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies