Port-arm archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: earmhf issues on Beaglebone Black
On Mon, Jul 21, 2014 at 10:52:45PM +0200, Manuel Bouyer wrote:
> [...]
> Here's a kdump related to one of these messages:
> 773 1 make CALL pipe
> 773 1 make RET pipe 3, 4
> 773 1 make CALL getpid
> 773 1 make RET getpid 773/0x305, 1223/0x4c7
> 773 1 make CALL __vfork14
> 85 1 make EMUL "netbsd"
> 85 1 make RET fork 0
> 85 1 make CALL close(3)
> 85 1 make RET close 0
> 85 1 make CALL dup2(4,1)
> 85 1 make RET dup2 1
> 85 1 make CALL close(4)
> 85 1 make RET close 0
> 85 1 make CALL execve(0x403124d0,0x7fffb6e8,0x7fffcb90)
> 85 1 make NAMI "/bin/sh"
> 85 1 make NAMI "/libexec/ld.elf_so"
> 773 1 make RET __vfork14 85/0x55
> 773 1 make CALL close(4)
> 773 1 make RET close 0
> 773 1 make CALL read(3,0x7fffb6f8,0x400)
> 773 1 make GIO fd 3 read 0 bytes
> ""
> 773 1 make RET read 0
> 773 1 make CALL close(3)
> 773 1 make RET close 0
> 773 1 make CALL __wait450(0x55,0x7fffb6f8,0,0)
> 773 1 make RET __wait450 85/0x55
> 773 1 make CALL write(2,0x7fffb618,9)
> 773 1 make GIO fd 2 wrote 9 bytes
> "make[3]: "
> 773 1 make RET write 9
> 773 1 make CALL write(2,0x465ab,1)
> 773 1 make GIO fd 2 wrote 1 bytes
> "\""
> 773 1 make RET write 1
> 773 1 make CALL write(2,0x7fffb618,0x2a)
> 773 1 make GIO fd 2 wrote 42 bytes
> "../../mk/compiler/../../mk/compiler/gcc.mk"
> 773 1 make RET write 42/0x2a
> 773 1 make CALL write(2,0x7fffb618,0xc)
> 773 1 make GIO fd 2 wrote 12 bytes
> "\" line 168: "
> 773 1 make RET write 12/0xc
> 773 1 make CALL write(2,0x3144c,9)
> 773 1 make GIO fd 2 wrote 9 bytes
> "warning: "
> 773 1 make RET write 9
> 773 1 make CALL write(2,0x7fffb648,0x6d)
> 773 1 make GIO fd 2 wrote 109 bytes
> "\"( env LC_ALL=C /usr/bin/gcc -v 2>&1 | /usr/bin/grep 'gcc version')
> 2\
> >/dev/null || echo 0\" exited on a signal"
> 773 1 make RET write 109/0x6d
>
> Maybe it's related to vfork ?
Here's a "normal" vfork sequence from make:
35 1 make CALL __vfork14
34 1 make EMUL "netbsd"
34 1 make RET fork 0
34 1 make CALL execve(0x7fffb9cc,0x4034e050,0x40310100)
34 1 make NAMI "/sbin/cc"
34 1 make RET execve -1 errno 2 No such file or directory
34 1 make CALL execve(0x7fffb9cc,0x4034e050,0x40310100)
34 1 make NAMI "/usr/sbin/cc"
34 1 make RET execve -1 errno 2 No such file or directory
34 1 make CALL execve(0x7fffb9cc,0x4034e050,0x40310100)
34 1 make NAMI "/bin/cc"
34 1 make RET execve -1 errno 2 No such file or directory
34 1 make CALL execve(0x7fffb9cc,0x4034e050,0x40310100)
34 1 make NAMI "/usr/bin/cc"
34 1 make NAMI "/usr/libexec/ld.elf_so"
34 1 cc EMUL "netbsd"
34 1 cc RET execve JUSTRETURN
35 1 make RET __vfork14 34/0x22
35 1 make CALL __wait450(0xffffffff,0x7fffbe1c,0,0)
34 1 cc CALL mmap(0,0x8000,3,0x1002,0xffffffff,0,0,0)
34 1 cc RET mmap 1074544640/0x400c4000
34 1 cc CALL open(0x400ae5b8,0,0x400c2648)
So it looks like the fault happens inside the execve(), but before the
new executable has actually been loaded (which could explain
why there's no core dump).
--
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
NetBSD: 26 ans d'experience feront toujours la difference
--
Home |
Main Index |
Thread Index |
Old Index