delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2001/04/19/08:48:43

Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT sources DOT redhat DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT sources DOT redhat DOT com>
List-Help: <mailto:cygwin-help AT sources DOT redhat DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT sources DOT redhat DOT com
Delivered-To: mailing list cygwin AT sources DOT redhat DOT com
Message-Id: <sadefa6c.040@mail.frequentis.com>
X-Mailer: Novell GroupWise Internet Agent 5.5.3.1
Date: Thu, 19 Apr 2001 14:46:53 +0200
From: "Reinhard JESSICH" <Reinhard DOT JESSICH AT frequentis DOT com>
To: <deo AT logos-m DOT ru>, <cygwin AT sources DOT redhat DOT com>
Cc: <reinhard DOT jessich AT telering DOT at>
Subject: Re: Re: dumper.exe doesn't work
Mime-Version: 1.0

--=_0E55E75C.49285605
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

>>> cgf AT redhat DOT com 04/18/01 10:21pm >>>
> On Wed, Apr 18, 2001 at 11:50:58PM +0400, egor duda wrote:
>Hi!
>
>Wednesday, 18 April, 2001 Christopher Faylor cgf AT redhat DOT com wrote:
>
> >>>i don't think so. maybe gdb snapshots are built without cygwin core
> >>>dumps support? can you build gdb yourself and check? make sure that
> >>>configure finds sys/procfs.h and win32_pstatus_t in it.
>                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ only this, i =
think.
I have build gdb from source and I saw in the config.h file in the bfd =
subdirectory, that
HAVE_WIN32_PSTATUS_T is defined. Therefore, I think core dump support is =
build
in gdb per default. Sorry for making you trouble with this.

Then I have analysed the coredump it was no coredump it was a stack dump =
from the
cygnus exception handler, I guess.

Here is it:
Exception: STATUS_INTEGER_DIVIDE_BY_ZERO at eip=3D00401062
eax=3D00000000 ebx=3D00000004 ecx=3D00000000 edx=3D00000000 esi=3D6107D0E8 =
edi=3D00000002
ebp=3D0240FBD4 esp=3D0240FE6C program=3DC:\cygwin\usr\src\dbz.exe
cs=3D001B ds=3D0023 es=3D0023 fs=3D003B gs=3D0000 ss=3D0023
Stack trace:
Frame     Function  Args
0240FBD4  00401062  (00000000, 00000000, 00000000, 00000000)
.......
0240FFF0  77F1B9EA  (00401000, 00000000, 000000B0, 00000100)
End of stack trace

I have found in the list archive, that I have to do the following, to =
activate dumper.exe.
I have to add "error_start=3Ddrive:\\pathtodumper\\dumper.exe" to the =
CYGWIN
environment variable (I have tried unix path name and this doesn't work).
The problem was, that this never terminated (maybe I have waited to less =
time,
only 2 Minutes). Then I have used gdb instead of dumper to check if cygnus =
exception
handler will call any program and this worked.

Please can you tell me what I have done wrong here.

Then I have compiled my test program with the -mno_cygwin switch and =
installed
dumper instead of DrWatson in the registry as debugger.
This worked now and I got a coredump (.core), but this was not readable by =
gdb
(gdb --core=3D.core test.exe says unknown architecture).

Then I have tried objdump --all .core and got:

.core:     file format elf32-little
.core
architecture: UNKNOWN!, flags 0x00000000:
                       ^^^^^^^^^^^^^I think this is the problem!!!
start address 0x00000000

Program Header:
    LOAD off    0x00000454 vaddr 0x00010000 paddr 0x00000000 align 2**0
         filesz 0x00002000 memsz 0x00002000 flags rw-
......
    NOTE off    0x00124854 vaddr 0x00000000 paddr 0x00000000 align 2**0
         filesz 0x00000112 memsz 0x00000000 flags rw-
......
Sections:
Idx Name          Size      VMA       LMA       File off  Algn
  0 load0         00002000  00010000  00000000  00000454  2**0
                  CONTENTS, ALLOC, LOAD
......
 27 note27        00000112  00000000  00000000  00124854  2**0
                  CONTENTS
 28 .module/00400000 000000f6  00000000  00000000  00124870  2**2
                  CONTENTS
 29 note28        000000f4  00000000  00000000  00124966  2**0
                  CONTENTS
 30 .reg/207      000000cc  00000000  00000000  0012498e  2**2
                  CONTENTS
 31 .reg          000000cc  00000000  00000000  0012498e  2**2
                  CONTENTS
......

Now I am sure dumper.exe will not produce a valid coredump. Maybe you can =
tell me
what I have to change in dumper to get a valid one.

Thank you for your help and sorry again to produce work for you with =
building gdb.

Attached you will find the test program.

Regards,
   Reinhard



--=_0E55E75C.49285605
Content-Type: application/octet-stream; name="dbz.c"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="dbz.c"

I2luY2x1ZGUgPHN0ZGlvLmg+DQp2b2lkIHNtb2tlb2ZmKCB2b2lkICkNCnsNCiAgIGludCBpLGo7
DQoNCiAgIGZvciggaSA9IDE7IGkgPCAxMDA7IGkgPSAoIGkgKyAxICkgJSA5OSApDQogICB7DQog
ICAgICBqIC89IGk7DQogICB9DQp9DQoNCmludCBtYWluKCBpbnQgYXJnYyxjaGFyICphcmd2W10g
KQ0Kew0KICAgaWYoIGFyZ2MgPiAxICkNCiAgIHsNCiAgICAgIHNtb2tlb2ZmKCk7DQogICB9DQoN
CiAgIHJldHVybiAwOw0KfQ0K


--=_0E55E75C.49285605
Content-Type: text/plain; charset=us-ascii

--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple
--=_0E55E75C.49285605--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019