Ulrich, All,

Using GDB, I figured out that the S0C4 is coming from the path_open
routine of elf/dl-load.c in glibc.  Is there any way to figure out which
assembler instructions belong to wchich lines of C source code?  I don't
presume to be able to debug glibc, but at least I can try to get the
glibc developers to look at the problem.


Mark Post

-----Original Message-----
From: Linux on 390 Port [mailto:[EMAIL PROTECTED] On Behalf Of
Ulrich Weigand
Sent: Sunday, September 24, 2006 5:56 PM
To: LINUX-390@VM.MARIST.EDU
Subject: Re: OpenSSH Oddity

Brad Hinson wrote:
>Looking at arch/s390/kernel/traps.c, do_trap(), I bet interruption code
>0x4 corresponds to EINTR 'interrupted system call'.

Actually, it doesn't ;-)

This code is what is called "program-interruption condition" in the the
ESA/390 Principles of Operation, and code 4 corresponds to a "Protection
Exception".  This can be caused by a variety of conditions, but in Linux
user space it always means your program tried to write to an read-only
memory mapping.

In this particular case we have a User PSW of 070dc000 c0006318, that is
we wereexecuting the instruction at 0x40006318 (which tends to be within
the main executable .text section); this instructions happened to be
User
Code: 50 00 70 00, i.e. st %r0, 0(%r7).  Register %r7 contained
0x40016f3c,
and this is confirmed by "failing address: 40016000" (note that the
hardware
reports the failing address only by page).

Now it's hard to say where exactly the address 0x40016f3c points to,
but it is low enough to have some likelyhood of also residing with
the main executable's .text (or .rodata) section, which is generally
mapped read-only.

So the question is why the program tries to write to a read-only
location.  I'd recommend to use GDB to track this down further,
either on the live process or else on a core dump.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

----------------------------------------------------------------------
For LINUX-390 subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: INFO LINUX-390 or visit
http://www.marist.edu/htbin/wlvindex?LINUX-390

Reply via email to