Hi,everyone.
These days, I have been working on android porting. But cannot launch
the file of /init in the ramdisk.img.

I have found that the ramdisk.img has been unpacked and mounted to
rootfs.
In the kernel , I can list the entry of the initial ramdisk by printk
function.
But when run the first process /init on the rootfs ,Nothing has
happened.
And I printk the return value of do_execve, the value is correct.

The process is executed as follows.

start_kernel->rest_init->kernel_init->init_post->run_init_process-
>kernel_execve

In the kernel_execve ,printk the return value of do_execve. And the
value is zero. I think that is right.
But why the screen has nothing to export?
int kernel_execve(const char *filename, char *const argv[], char
*const envp[])
{
    struct pt_regs
regs;
    int
ret;

    memset(&regs, 0, sizeof(struct
pt_regs));
    ret = do_execve((char *)filename, (char __user * __user
*)argv,
            (char __user * __user *)envp,
&regs);
    if (ret <
0)
        goto
out;

    /
*
     * Save argc to the register structure for
userspace.
 
*/
    regs.ARM_r0 =
ret;
    printk("ret:%d\n",ret);
...
All suggestions will be appreciated.

-- 
unsubscribe: android-kernel+unsubscr...@googlegroups.com
website: http://groups.google.com/group/android-kernel

Reply via email to