<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=us-ascii"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><title>busybox shell doesn't come up or get stuck.. where should I look or how should I debug it?</title><style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"Malgun Gothic";
        panose-1:2 11 5 3 2 0 0 2 0 4;}
@font-face
        {font-family:"Malgun Gothic";
        panose-1:2 11 5 3 2 0 0 2 0 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:"Malgun Gothic";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:3.0cm 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:1397121690;
        mso-list-template-ids:-220045616;}
@list l0:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:36.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:72.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:"Courier New";
        mso-bidi-font-family:"Times New Roman";}
@list l0:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:108.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:144.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level5
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:180.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:216.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:252.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level8
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:288.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:324.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
ol
        {margin-bottom:0cm;}
ul
        {margin-bottom:0cm;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=KO link="#0563C1" vlink="#954F72"><div class=WordSection1><p class=MsoNormal style='word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>Hello, all,<o:p></o:p></span></p><p class=MsoNormal style='word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'><o:p> </o:p></span></p><p class=MsoNormal style='word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>In the initramfs.cpio.gz file from the busybox, when I replace the /init script to an executable binary called ‘init’, (which prints Hello! Repeatedly), <o:p></o:p></span></p><p class=MsoNormal style='word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>The output from the board looks like this.  <o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>(...)<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>### point 106<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>### point 106-1<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>Run /init as init process<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>### point 106-2, ret = -2<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>Failed to execute /init (error -2)<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>### point 107<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>### point 107-1<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>Run /init as init process<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>### point 107-2, ret = -2<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>Kernel panic - not syncing: Requested init /init failed (error -2).<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.10.0-rc5 #197<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=DE style='font-size:10.0pt;font-family:"Malgun Gothic"'>Hardware name: ETRI ab21m (DT)<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>Call trace:<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'> dump_backtrace+0x0/0x190<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'> show_stack+0x14/0x30<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'> dump_stack+0xcc/0x104<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'> panic+0x16c/0x328<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'> kernel_init+0x178/0x264<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'> ret_from_fork+0x10/0x18<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>Kernel Offset: disabled<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>CPU features: 0x0000007,78002c18<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>Memory Limit: none<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>---[ end Kernel panic - not syncing: Requested init /init failed (error -2). ]---<o:p></o:p></span></p><p class=MsoNormal style='word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'><o:p> </o:p></span></p><p class=MsoNormal style='word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>The related source code (init/main.c) looks like this (trying it first from the ramdisk.  ‘init=/init’ was given from the bootargs in device tree)<o:p></o:p></span></p><p class=MsoNormal style='word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'><o:p> </o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>printk("### point 106\n");<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>    if (ramdisk_execute_command) {<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>        printk("### point 106-1\n");<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>        ret = run_init_process(ramdisk_execute_command);<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>        printk("### point 106-2, ret = %d\n", ret);<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>        if (!ret)<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>            return 0;<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>        pr_err("Failed to execute %s (error %d)\n",<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>               ramdisk_execute_command, ret);<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>    }<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'><o:p> </o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>    /*<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>     * We try each of these until one succeeds.<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>     *<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>     * The Bourne shell can be used instead of init if we are<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>     * trying to recover a really broken machine.<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>     */<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>    printk("### point 107\n");<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>    if (execute_command) {<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>        printk("### point 107-1\n");<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>        ret = run_init_process(execute_command);<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>        printk("### point 107-2, ret = %d\n", ret);<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>        if (!ret)<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>            return 0;<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>        panic("Requested init %s failed (error %d).",<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>              execute_command, ret);<o:p></o:p></span></p><p class=MsoNormal style='margin-left:33.0pt;mso-para-margin-left:3.0gd;word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>    }<o:p></o:p></span></p><p class=MsoNormal style='word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'><o:p> </o:p></span></p><p class=MsoNormal style='word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>I compiled the init program by the command “aarch64-none-linux-gcc -static -o init test.c”.<o:p></o:p></span></p><p class=MsoNormal style='word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>When ‘init’ was a script, some lines of it was processed ok, but when I replace ‘init’ to a binary program, it just failed with -2.<o:p></o:p></span></p><p class=MsoNormal style='word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>I find error code 2 is ‘No such file or directory’ which is strange because my ‘init’ program was under / when I made the initramfs.cpio.gz.<o:p></o:p></span></p><p class=MsoNormal style='word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>Can anyone give me any advice?<o:p></o:p></span></p><p class=MsoNormal style='word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'><o:p> </o:p></span></p><p class=MsoNormal style='word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>Thank you!<o:p></o:p></span></p><p class=MsoNormal style='word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'>Chan Kim<o:p></o:p></span></p><p class=MsoNormal style='word-break:break-hangul'><span lang=EN-US style='font-size:10.0pt;font-family:"Malgun Gothic"'><o:p> </o:p></span></p><div style='border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt'><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span lang=EN-US>From:</span></b><span lang=EN-US> Chan Kim <ckim@etri.re.kr> <br><b>Sent:</b> Friday, August 12, 2022 5:32 PM<br><b>To:</b> kernelnewbies@kernelnewbies.org<br><b>Subject:</b> busybox shell doesn't come up or get stuck.. where should I look or how should I debug it?<o:p></o:p></span></p></div></div><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>Hi all,</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>I'm trying to boot linux</span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>with minimal config</span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>on our FPGA board which is under development.</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>After months of trying (but</span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>I tried this intermittently) I think I'm</span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>about to see the shell prompt.</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>(there was a bug in interconnect driver that I found yesterday,</span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>this caused a long delay)</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>Anyway, when I run linux kernel on a qemu machine, the boot process ends like this at the shell prompt.</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>(The</span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>echo</span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>'### INIT SCRIPT ###' was</span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>put</span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>in /init</span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>script which is in</span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>the</span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>initramfs)</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>  </span><span lang=EN-US> <o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>   </span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>Run /init as init process</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>   </span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>### INIT SCRIPT ###</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>   </span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>mount: mounting none on /tmp failed: Invalid argument</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>  </span><span lang=EN-US> <o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>   </span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>This boot took 2.12 seconds</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>  </span><span lang=EN-US> <o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>   </span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>/bin/sh: can't access tty; job control turned off</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>   </span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>/ # </span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>   </span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>/ #</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>Now, when I run it on our FPGA board using u-boot, it ends like this.</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>  </span><span lang=EN-US> <o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>   </span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>Run /init as init process</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>    ### INIT SCRIPT ###</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>    mount: mounting none on /tmp failed: Invalid argument</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>  </span><span lang=EN-US> <o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>    This boot</span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>took 0.00 seconds</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>  </span><span lang=EN-US> <o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>    /bin/sh: can't acce</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>   </span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>So it seems this init_kernel</span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>thread executes /init and /init excutes /bin/sh at the end.</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>this is the /init script.</span><span lang=EN-US><o:p></o:p></span></p><p style='margin-left:36.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>#!/bin/sh</span><span lang=EN-US><o:p></o:p></span></p><p style='margin-left:36.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>echo "### INIT SCRIPT ###"</span><span lang=EN-US><o:p></o:p></span></p><p style='margin-left:36.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>mkdir /proc /sys /tmp</span><span lang=EN-US><o:p></o:p></span></p><p style='margin-left:36.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>mount -t proc none /proc</span><span lang=EN-US><o:p></o:p></span></p><p style='margin-left:36.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>mount -t</span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>sysfs none /sys</span><span lang=EN-US><o:p></o:p></span></p><p style='margin-left:36.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>mount -t tmpfs none /tmp</span><span lang=EN-US><o:p></o:p></span></p><p style='margin-left:36.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>echo -e "\nThis boot took $(cut -d' ' -f1 /proc/uptime) seconds\n"</span><span lang=EN-US><o:p></o:p></span></p><p style='margin-left:36.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>#ifconfig eth0 10.0.2.15 netmask 255.255.255.0 up</span><span lang=EN-US><o:p></o:p></span></p><p style='margin-left:36.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>#route add default gw 10.0.2.2</span><span lang=EN-US><o:p></o:p></span></p><p style='margin-left:36.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>exec /bin/sh</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>Somehow the busybox</span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>applet /bin/sh is stuck somewhere.</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>Can anybody tell me where I should look?</span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>Or</span><span lang=EN-US> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>how to debug this?</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>Thanks in advance!</span><span lang=EN-US><o:p></o:p></span></p><p><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'>Chan Kim</span><span lang=EN-US><o:p></o:p></span></p></div></div></body></html>