From: schwarzb@ipms.fraunhofer.de (Markus Schwarzenberg)
To: linux-arm-kernel@lists.infradead.org
Subject: smdk6400/S3C6400 failure on execution of init process
Date: Wed, 28 Oct 2009 16:20:37 +0100 [thread overview]
Message-ID: <20091028162037.22f2cb22@linpcd55> (raw)
booting linux-2.6.32-rc5 on our smdk6400 (S3C6400) fails somewhere in/after
the asm call in arch/arm/kernel/sys_arm.c:kernel_execve, when the init
process is to be run.
The preceding do_execve returned OK, which suggests that the /init file is
found, executable etc. in rootfs.
The failure happens for both booting from sd-card as well as from initramfs.
I've tried several /init applications, from busybox to a simple wait(1); loop
all with the same behavior.
What's the best way to debug this?
Messages (first two lines from additional diagnostics in
do_execve [**] / kernel_execve [*] ):
do_execve (/endless-loop-nonstatic-arm) succeeded
kernel_execve calling asm
mmc0: starting CMD18 arg 30868800 flags 000000b5
mmc0: blksz 512 blocks 72 flags 00000200 tsac 100 ms nsac 0
mmc0: CMD12 arg 00000000 flags 0000049d
sdhci [sdhci_irq()]: *** mmc0 got interrupt: 0x00000001
sdhci [sdhci_irq()]: *** mmc0 got interrupt: 0x00000002
sdhci [sdhci_irq()]: *** mmc0 got interrupt: 0x00000001
mmc0: req done (CMD18): 0: 00000900 00000000 00000000 00000000
mmc0: 36864 bytes transferred: 0
mmc0: (CMD12): 0: 00000b00 00000000 00000000 00000000
Kernel panic - not syncing: Attempted to kill init!
Backtrace:
[<c002a9f0>] (dump_backtrace+0x0/0x114) from [<c0275358>]
(dump_stack+0x18/0x1c)
r7:c781ff64 r6:c781d900 r5:c781d900 r4:c034201c
[<c0275340>] (dump_stack+0x0/0x1c) from [<c02753a8>] (panic+0x4c/0x11c)
[<c027535c>] (panic+0x0/0x11c) from [<c0048990>] (do_exit+0x74/0x5b4)
r3:c032a428 r2:c781d900 r1:c781fc28 r0:c02df366
[<c004891c>] (do_exit+0x0/0x5b4) from [<c0048f54>]
(do_group_exit+0x84/0xb8)
[<c0048ed0>] (do_group_exit+0x0/0xb8) from [<c0052cc8>]
(get_signal_to_deliver+0x2b8/0x2e8)
r4:00000004
[<c0052a10>] (get_signal_to_deliver+0x0/0x2e8) from [<c00291c0>]
(do_notify_resume+0x64/0x5b8)
[<c002915c>] (do_notify_resume+0x0/0x5b8) from [<c0026f2c>]
(work_pending+0x1c/0x20)
Regards,
Markus Schwarzenberg
[*] additional messages generated in kernel_execve
--- linux-2.6.32-rc5.orig/arch/arm/kernel/sys_arm.c 2009-10-16 02:41:50.000000000 +0200
+++ linux-2.6.32-rc5/arch/arm/kernel/sys_arm.c 2009-10-28 16:11:25.000000000 +0100
@@ -265,6 +265,7 @@
struct pt_regs regs;
int ret;
+ printk("kernel_execve %s\n", filename);
memset(®s, 0, sizeof(struct pt_regs));
ret = do_execve((char *)filename, (char __user * __user *)argv,
(char __user * __user *)envp, ®s);
@@ -275,6 +276,7 @@
* Save argc to the register structure for userspace.
*/
regs.ARM_r0 = ret;
+ printk("kernel_execve calling asm\n");
/*
* We were successful. We won't be returning to our caller, but
@@ -296,6 +298,7 @@
: "r0", "r1", "r2", "r3", "ip", "lr", "memory");
out:
+ printk("kernel_execve return\n");
return ret;
}
EXPORT_SYMBOL(kernel_execve);
[**] additional messages generated in do_execve
--- linux-2.6.32-rc5.orig/fs/exec.c 2009-10-16 02:41:50.000000000 +0200
+++ linux-2.6.32-rc5/fs/exec.c 2009-10-28 10:20:46.000000000 +0100
@@ -1362,6 +1362,7 @@
current->stack_start = current->mm->start_stack;
/* execve succeeded */
+ printk("do_execve (%s) succeeded\n", filename);
current->fs->in_exec = 0;
current->in_execve = 0;
acct_update_integrals(current);
@@ -1392,6 +1393,7 @@
if (displaced)
reset_files_struct(displaced);
out_ret:
+ printk("do_execve (%s) had errors\n", filename);
return retval;
}
next reply other threads:[~2009-10-28 15:20 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-28 15:20 Markus Schwarzenberg [this message]
2009-10-28 15:30 ` smdk6400/S3C6400 failure on execution of init process Ben Dooks
2009-10-28 15:49 ` Markus Schwarzenberg
2009-10-28 15:39 ` Rabin Vincent
2009-10-28 15:59 ` Markus Schwarzenberg
2009-10-28 16:10 ` Rabin Vincent
2009-10-28 16:26 ` Markus Schwarzenberg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20091028162037.22f2cb22@linpcd55 \
--to=schwarzb@ipms.fraunhofer.de \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.