Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: asmwarrior <asmwarrior@gmail.com>
To: Pierre Muller <pierre.muller@ics-cnrs.unistra.fr>
Cc: gdb-patches@sourceware.org
Subject: Re: [RFC-v5] Fix .text section offset for windows DLL (was Calling __stdcall functions in the inferior)
Date: Sun, 09 Dec 2012 13:19:00 -0000	[thread overview]
Message-ID: <50C49050.2020700@gmail.com> (raw)
In-Reply-To: <50c487f8.a813b40a.57d7.ffffdc7fSMTPIN_ADDED_BROKEN@mx.google.com>

On 2012-12-9 20:45, Pierre Muller wrote:
> Hi Yuanhui,
>
>
>> -----Message d'origine-----
>> De : gdb-patches-owner@sourceware.org [mailto:gdb-patches-
>> owner@sourceware.org] De la part de asmwarrior
>> Envoyé : dimanche 9 décembre 2012 03:48
>> À : Pierre Muller
>> Cc : 'Joel Brobecker'; 'Eli Zaretskii'; gdb-patches@sourceware.org
>> Objet : Re: [RFC-v5] Fix .text section offset for windows DLL (was Calling
>> __stdcall functions in the inferior)
>>
>> On 2012-12-9 2:00, Pierre Muller wrote:
>>>      This memory corruption is rather odd...
>>> it seems that the rva_end of index=2 seems to contains the same data
>>> as the section_name for index 4...
>>>     This array is really created only inside read_pe_exported_syms
>>> so that it would be worth trying to add a breakpoint at that function,
>>> and step over it for ntdll.dll to understand when the data gets
>> corrupted...
>>>     Would it be possible for you to upload the codeblocks executable that
>> triggers
>>> the problem somewhere so I could
>>> check if I get the same errors and debug further?
>>>
>>>     I have no idea what is going on...
>>>
>>>
>>> Pierre Muller
>>>
>> Hi, Pierre:
>>
>> I think you can test the official Codeblocks release 12.11.
>>
>> 1, you can download the release from: http://www.codeblocks.org/downloads/26
>> select this one: codeblocks-12.11-setup.exe
>> Note: the binaries in this release contain debug information (build with -g
>> options)
>    
>    Strange because I did install program that you are refereeing to above,
> but the installed codeblock.exe files doesn't contain any debug information,
> see elow:
>
> C:\Program Files (x86)\CodeBlocks\debug>dir codeblocks.exe
>   Le volume dans le lecteur C s'appelle OS
>   Le numéro de série du volume est 4801-E7AF
>
>   Répertoire de C:\Program Files (x86)\CodeBlocks\debug
>
> 28/11/2012  20:08         1 253 390 codeblocks.exe
>                 1 fichier(s)        1 253 390 octets
>                 0 Rép(s)   2 344 669 184 octets libres
>
> C:\Program Files (x86)\CodeBlocks\debug>gdbcvs codeblocks.exe
> GNU gdb (GDB) 7.5.50.20121106-cvs
> Copyright (C) 2012 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
> and "show warranty" for details.
> This GDB was configured as "i686-pc-mingw32".
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>...
> Reading symbols from C:\Program Files (x86)\CodeBlocks\debug\codeblocks.exe...(no debugging symbols found)...done.
> (gdb) q
>
> C:\Program Files (x86)\CodeBlocks\debug>objdump -h codeblocks.exe
>
> codeblocks.exe:     file format pei-i386
>
> Sections:
> Idx Name          Size      VMA       LMA       File off  Algn
>    0 .text         000b550c  00401000  00401000  00000400  2**4
>                    CONTENTS, ALLOC, LOAD, READONLY, CODE, DATA
>    1 .data         00000100  004b7000  004b7000  000b5a00  2**2
>                    CONTENTS, ALLOC, LOAD, DATA
>    2 .rdata        0001bb30  004b8000  004b8000  000b5c00  2**5
>                    CONTENTS, ALLOC, LOAD, READONLY, DATA
>    3 .eh_frame     00000438  004d4000  004d4000  000d1800  2**2
>                    CONTENTS, ALLOC, LOAD, READONLY, DATA
>    4 .bss          000086dc  004d5000  004d5000  00000000  2**5
>                    ALLOC
>    5 .edata        00000985  004de000  004de000  000d1e00  2**2
>                    CONTENTS, ALLOC, LOAD, READONLY, DATA
>    6 .idata        00014120  004df000  004df000  000d2800  2**2
>                    CONTENTS, ALLOC, LOAD, DATA
>    7 .CRT          00000018  004f4000  004f4000  000e6a00  2**2
>                    CONTENTS, ALLOC, LOAD, DATA
>    8 .tls          00000020  004f5000  004f5000  000e6c00  2**2
>                    CONTENTS, ALLOC, LOAD, DATA
>    9 .rsrc         0003bc0c  004f6000  004f6000  000e6e00  2**2
>                    CONTENTS, ALLOC, LOAD, DATA
>   10 .reloc        0000f2c8  00532000  00532000  00122c00  2**2
>                    CONTENTS, ALLOC, LOAD, READONLY, DATA
>
> C:\Program Files (x86)\CodeBlocks\debug>
>
>    Are you sure it's the file  from codeblocks-12.11-setup.exe
> that you are analyzing?
Sorry, I may be wrong, but look at this post in C::B forum:
http://forums.codeblocks.org/index.php/topic,17200.msg117936.html#msg117936
One of the C::B developer said that the debug information is not stripped in the exe/dll files.
But whether the codeblocks.exe contains the debug information or not, it did crash gdb when I run the
command:
file:

file d:/software/cb/codeblocks/codeblocks.exe
> STOP right here!
>
>    You get a warning about memory corruption before the crash!
>    So you need to find out why you get this.
Here, in my system, I have two codeblocks.exe, one is under my svn_trunk folder(build myself), which cause my gdb crash when I enter "r" command.
The other one is from the "codeblocks-12.11-setup.exe", which cause gdb crash when I run the "file xxxxx" command.
I'm not sure they refer to the same issue.
>    The best would be to start GDB from gdb_stable using
> start command and place an access watchpoint on the location
> that is given (if the address is the same for different runs...)
> awatch *0x2de4228
> should allow to get more information.
>    It might not work right after start command,
> because the corresponding memory block might
> not yet be accessible by the program,
> in that case try to add a breakpoint
> at read_pe_exported_syms function,
> and try to insert the watchpoint at each stop at that breakpoint.
>
>    This way, we might finally understand which allocated memory
> is accessed after being freed.
It looks like I need to learn some gdb commands I have never used.

Do I need to upload myself build codeblocks binaries somewhere that you want try it?
Or you can already build codeblocks yourself?

Yuanhui Zhang




  parent reply	other threads:[~2012-12-09 13:19 UTC|newest]

Thread overview: 59+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <83a9vs89r9.fsf@gnu.org>
     [not found] ` <201210120953.q9C9rqfu020865@glazunov.sibelius.xs4all.nl>
     [not found]   ` <834nm07z0s.fsf@gnu.org>
     [not found]     ` <5077FEB9.4030304@redhat.com>
     [not found]       ` <83y5jb7rfe.fsf@gnu.org>
2012-10-15 13:36         ` [RFC] " Pierre Muller
2012-10-24 19:45           ` Joel Brobecker
2012-10-25 12:21             ` Pierre Muller
2012-11-05 17:11               ` Joel Brobecker
2012-11-06 14:31                 ` [RFC-v2] " Pierre Muller
     [not found]                 ` <50991f5f.8382440a.1100.ffff82abSMTPIN_ADDED@mx.google.com>
2012-11-07 19:44                   ` Pedro Alves
2012-11-08  9:54                     ` [RFC-v3] " Pierre Muller
2012-11-22 17:30                       ` Joel Brobecker
2012-11-22 17:51                         ` Pedro Alves
2012-11-25 22:50                         ` [RFC-v4] " Pierre Muller
2012-11-26 17:22                           ` Joel Brobecker
2012-11-26 18:36                             ` Tom Tromey
2012-11-26 20:58                               ` Joel Brobecker
     [not found]                         ` <15690.5992342674$1353883881@news.gmane.org>
2012-11-26  4:04                           ` asmwarrior
2012-11-26 10:14                             ` Pierre Muller
     [not found]                             ` <50b340fb.0aec440a.1c48.5818SMTPIN_ADDED_BROKEN@mx.google.com>
2012-11-26 11:39                               ` Pedro Alves
2012-11-26 16:54                           ` Tom Tromey
2012-11-27 14:59                             ` [RFC-v5] " Pierre Muller
2012-12-07  7:10                               ` Joel Brobecker
2012-12-07 15:23                                 ` asmwarrior
2012-12-07 15:41                                   ` Pierre Muller
     [not found]                                   ` <29545.4593528577$1354894901@news.gmane.org>
2012-12-07 16:15                                     ` asmwarrior
2012-12-07 16:27                                       ` Pierre Muller
     [not found]                                       ` <50c21914.a750420a.2ec3.ffffe4ffSMTPIN_ADDED_BROKEN@mx.google.com>
2012-12-07 17:10                                         ` Pedro Alves
2012-12-07 17:49                                           ` Pedro Alves
2012-12-13 10:57                                             ` Pierre Muller
2012-12-13 11:07                                               ` Pedro Alves
2012-12-13 11:49                                                 ` Pedro Alves
     [not found]                                                 ` <00a201cdd931$b0ee13f0$12ca3bd0$@muller@ics-cnrs.unistra.fr>
2012-12-13 14:32                                                   ` Pedro Alves
2012-12-13 15:17                                                     ` Pierre Muller
2012-12-13 14:33                                                   ` Pedro Alves
2012-12-13 14:56                                                     ` Pierre Muller
2012-12-13 15:03                                                       ` Pedro Alves
2012-12-13 16:43                                                         ` Pedro Alves
2012-12-13 16:54                                                           ` Pierre Muller
2012-12-13 16:56                                                             ` Pedro Alves
2012-12-13 17:09                                                               ` Pierre Muller
2012-12-13 15:08                                                       ` Pierre Muller
2012-12-13 16:04                                                         ` Pedro Alves
     [not found]                                       ` <50c218e5.2850b40a.0281.ffffbef4SMTPIN_ADDED_BROKEN@mx.google.com>
2012-12-08 14:17                                         ` asmwarrior
2012-12-08 15:07                                           ` asmwarrior
2012-12-08 18:01                                           ` Pierre Muller
     [not found]                                           ` <50c38058.03d0d80a.31dd.4e28SMTPIN_ADDED_BROKEN@mx.google.com>
2012-12-09  2:45                                             ` asmwarrior
2012-12-09 12:45                                               ` Pierre Muller
     [not found]                                               ` <50c487f8.a813b40a.57d7.ffffdc7fSMTPIN_ADDED_BROKEN@mx.google.com>
2012-12-09 13:19                                                 ` asmwarrior [this message]
2012-12-13 10:48                                 ` Pierre Muller
     [not found]                                 ` <37373.4003318988$1355395714@news.gmane.org>
2012-12-13 16:16                                   ` Tom Tromey
2012-12-13 16:21                                     ` Pierre Muller
     [not found]                                     ` <12936.6976012991$1355415704@news.gmane.org>
2012-12-13 20:05                                       ` Tom Tromey
     [not found]                             ` <42721.1671988063$1354028360@news.gmane.org>
2012-11-28  2:44                               ` asmwarrior
2012-11-29  3:40                                 ` asmwarrior
2012-12-12  0:59                               ` asmwarrior
     [not found]                         ` <50b2a0d1.c849420a.3a3a.3538SMTPIN_ADDED_BROKEN@mx.google.com>
2012-12-07 16:38                           ` [RFC-v4] " Pedro Alves
2012-12-07 17:03                             ` Pierre Muller
2012-12-07 17:50                               ` Pedro Alves
     [not found]                     ` <000301cdbd96$f5cd9f10$e168dd30$%muller@ics-cnrs.unistra.fr>
2012-11-17 10:01                       ` [RFC-v3] " Eli Zaretskii
     [not found]         ` <006001cdaada$00c81f00$02585d00$%muller@ics-cnrs.unistra.fr>
2012-10-15 17:23           ` [RFC] " Eli Zaretskii
2012-11-03 10:36             ` Eli Zaretskii
2012-11-06 13:55               ` Pierre Muller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=50C49050.2020700@gmail.com \
    --to=asmwarrior@gmail.com \
    --cc=gdb-patches@sourceware.org \
    --cc=pierre.muller@ics-cnrs.unistra.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox