[Buildroot] Illegal Instruction in arm buildroot

ing. Federico Fuga fuga at studiofuga.com
Thu Nov 15 14:43:52 UTC 2007


Hi again,

I was meaning that I cannot find the SOFT_FLOAT options for the
buildroot toolchain building, maybe I had to search in the scripts (.mk).
But I have found the problem for the busybox (wget et al.), by
disableing the MONOTONIC_SYSCALL option now busybox works correctly
(wget and udhcpc doesn't crash anymore).
The problem  persist with udevd (144 and 116 versions), but I think I
have traced the problem to the inotify syscall:

Core was generated by `./udevd'.
Program terminated with signal 4, Illegal instruction.
#0  0x40016cc0 in syscall () from /lib/libc.so.0
(gdb) bt
#0  0x40016cc0 in syscall () from /lib/libc.so.0
#1  0x0000a9b4 in main (argc=<value optimized out>,
    argv=<value optimized out>, envp=<value optimized out>)
    at udev_sysdeps.h:116
(gdb)                                                                                                                                     


and (for udev v.116) line 116 is

static inline int inotify_init(void)
{
        return syscall(__NR_inotify_init);
}

BTW, I have checked your suggestion and find that at boot:

NetWinder Floating Point Emulator V0.97 (double
precision)                                                                                


and a simple program that performs and prints 4.0/1.33 is compiled and
executed correctly (so FP unit is working, it seems.)

Thank you again for your suggestions.

Regards,

ing. Federico Fuga





More information about the buildroot mailing list