[prev in list] [next in list] [prev in thread] [next in thread] 

List:       linux-mips
Subject:    RE: "Segfault/illegal instruction" - udevd - ntpd - glibc
From:       "Sadarul Firos" <sadarul.firos () nestgroup ! net>
Date:       2007-06-26 14:38:11
Message-ID: 9A1299C7A40D7447A108107E951450CA01C9E04A () MAIL-TVM ! tvm ! nestgroup ! net
[Download RAW message or body]

Hello Ralf,

As an immediate workaround I've added a dummy _init/_fini functions in
nss_dns and nss_compat libraries and no segfault/illegal instruction
error was observed for over 800 successive reboots. Since I knew
overriding _init/_fini is dangerous, added constructor/destructor fns
replacing the dummy _init/_fini. But this time again I got the
segmentation fault/illegal instruction errors. I think this will give
you more insight. I'm really stuck up in the problem :(

-----Original Message-----
From: Sadarul Firos 
Sent: Monday, June 18, 2007 3:21 PM
To: 'ralf@linux-mips.org'
Cc: 'linux-mips@linux-mips.org'
Subject: RE: "Segfault/illegal instruction" - udevd - ntpd - glibc


Thanks Ralf for the reply.

Regarding kernel, I am using the final release version of linux 2.6.18
kernel with some customizations. Out of the two boards which I have one
has MSP8150 Multi-Service Processor(MIPS 64) and the other has ITE 8172
system controller with RM7035C, 64-bit MIPS RISC microprocessor(MIPS V).

-----Original Message-----
From: Ralf Baechle [mailto:ralf@linux-mips.org] 
Sent: Sunday, June 17, 2007 1:04 AM
To: Sadarul Firos
Cc: linux-mips@linux-mips.org
Subject: Re: "Segfault/illegal instruction" - udevd - ntpd - glibc

On Fri, Jun 15, 2007 at 09:23:34PM +0530, Sadarul Firos wrote:

> I am working with two MIPS based boards (one is MIPS and the other is
> MIPSEL) running linux-2.6.18/glibc-2.3.5. I am performing a
consecutive
> reboot test on these boards. After some number of reboots (say 80) I
am
> getting "segmentaion fault/illegal instruction" while running udevd
and
> ntpd during bootup. Upon observing the core dump, it is noted that the
> segfault occured from the _init function of libnss_dns.so (in the case
> of ntpd) and libnss_compat.so (in the case of udevd). I assume that
> there might be a problem somewhere in the call_init function in
> glibc-2.3.5/elf/dl-init.c. After I put some printf statements for
> debugging in the call_init function, there is no segfault/illegal
> instruction in the reboot testing. I have also used gdb to debug the
> problem but the "segfault/illegal instruction" doesn't occur during
the
> reboot test. Could anyone please help me to sort out this problem. The
> gdb output using coredump is attached.

Normally the address space layout and most other variables during a
program load should be identical each time so userspace should behave
identical.   So I sense the scent of a TLB or more likely cache
managment
problem.

What 2.6.18 variant exactly are you running, that is where & when did
download it, what CPU?

  Ralf

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic