Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Philippe Waroquiers <philippe.waroquiers@skynet.be>
To: Jan Kratochvil <jan.kratochvil@redhat.com>
Cc: Joel Brobecker <brobecker@adacore.com>,
	gdb-patches@sourceware.org,  Pedro Alves <palves@redhat.com>
Subject: Re: [patch] [i386] Put hlt at the ON_STACK breakpoint  [Re: GDB 7.4.91 available for testing]
Date: Mon, 23 Jul 2012 20:37:00 -0000	[thread overview]
Message-ID: <1343075809.2209.53.camel@soleil> (raw)
In-Reply-To: <20120723201611.GA19567@host2.jankratochvil.net>

On Mon, 2012-07-23 at 22:16 +0200, Jan Kratochvil wrote:
> On Mon, 23 Jul 2012 22:07:27 +0200, Philippe Waroquiers wrote:
> > Note that the trap instruction should only be written by the
> > push_dummy_code function : for Normal breakpoints, only a Z0 packet
> > should be done, as Valgrind will not allow to modify the guest
> > executable code (it is not mapped writable). 
> 
> I do not understand now what is and what is not allowed for valgrind to write.

The file mapped code (main program, shared libs) is not writable, and
so cannot be modified by Valgrind gdbsrv.

But Valgrind gdbsrv can modify all the memory which is writable.
So, a.o. it can modify the stack.

> 
> For the inferior call to work at all you have to create the stack frame for
> it, otherwise it cannot work, at least for parameters passed by stack.
> 
> So the GDB patch is no longer needed when you have fixed valgrind to put 0xcc
> during Z0? Why valgrind cannot write 0xcc into stack memory when it already
> has to write there to create the stack frame / parameters passed by stack?
Effectively, I have a patch which fixes the problem.
But the patch is a kludge which heuristically guesses that GDB is
pushing an infcall.

> 
> (Yes, I should read valgrind source code instead.)
> 
> IIUC the 'hlt' cleanup patch can go only for 7.6 as 7.5 should not regress
> with new/fixed valgrind.
infcall Valgrind gdbsrv tests are (currently) regressing with 7.4.91
It would be nice to have it fixed in 7.5 (so that no user can encounter
the nasty error message output by Valgrind) but this is not a critical
blocking problem.
So, up to you to see in which GDB release it can go.

If there will be a clean solution in GDB (7.5 or 7.6), then I will not
commit the kludge in Valgrind.

Philippe


  reply	other threads:[~2012-07-23 20:37 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20120718163413.GA17548@adacore.com>
     [not found] ` <1342739016.2220.32.camel@soleil>
     [not found]   ` <20120720071158.GA7053@host2.jankratochvil.net>
     [not found]     ` <1342817409.2149.41.camel@soleil>
     [not found]       ` <20120722173053.GA22036@host2.jankratochvil.net>
     [not found]         ` <1342983655.2301.55.camel@soleil>
2012-07-23  7:22           ` Jan Kratochvil
2012-07-23 16:00             ` Joel Brobecker
2012-07-23 16:36               ` Jan Kratochvil
2012-07-23 20:07                 ` Philippe Waroquiers
2012-07-23 20:16                   ` Jan Kratochvil
2012-07-23 20:37                     ` Philippe Waroquiers [this message]
2012-07-25 14:49                       ` Joel Brobecker
2012-07-25 20:04                         ` Philippe Waroquiers
2012-07-25 20:11                           ` Jan Kratochvil
2012-07-25 20:39                             ` Philippe Waroquiers
2012-07-25 14:59                       ` Pedro Alves
2012-07-25 20:24                         ` Philippe Waroquiers
2012-07-25 21:27                           ` Joel Brobecker
2012-07-25 21:46                             ` Philippe Waroquiers
2012-07-25 22:39                               ` Joel Brobecker
2012-07-26 21:24                                 ` [patchv2] Write bpt at the ON_STACK bpt address Jan Kratochvil
2012-07-26 21:50                                   ` Philippe Waroquiers
2012-07-27 18:47                                     ` Jan Kratochvil
2012-07-28  7:28                                       ` Eli Zaretskii
2012-07-28  7:42                                         ` Jan Kratochvil
2012-07-31  7:37                                       ` [commit+7.5] " Jan Kratochvil
2012-08-01  9:08                                         ` [commit#2+7.5] testsuite: valgrind-infcall.exp UNSUPPORTED update [Re: [commit+7.5] [patchv2] Write bpt at the ON_STACK bpt address] Jan Kratochvil
2012-08-02 22:49                                         ` [commit+7.5] [patchv2] Write bpt at the ON_STACK bpt address Edjunior Barbosa Machado
2012-08-02 23:09                                           ` Sergio Durigan Junior
2012-08-03  0:15                                             ` Edjunior Barbosa Machado
2012-08-03 11:23                                               ` Jan Kratochvil
2012-08-03 12:09                                                 ` Edjunior Barbosa Machado
2012-08-03  1:00                                             ` Pedro Alves
2012-08-03  1:48                                               ` Sergio Durigan Junior
2012-08-03  2:30                                                 ` Edjunior Barbosa Machado
2012-08-03 21:45                                                   ` Philippe Waroquiers
2012-08-03 14:23                                               ` Tom Tromey
2012-08-03 14:31                                                 ` Jan Kratochvil
2012-08-03 15:02                                                   ` Edjunior Barbosa Machado
2012-08-03 15:08                                                     ` Jan Kratochvil
2012-08-03 16:43                                                       ` Edjunior Barbosa Machado
2012-08-03 16:46                                                         ` Jan Kratochvil
2012-08-03 18:00                                                           ` Edjunior Barbosa Machado
2012-08-03 20:23                                           ` Jan Kratochvil
2012-08-03 21:46                                             ` Edjunior Barbosa Machado
2012-08-06 18:40                                               ` Tom Tromey
2012-07-31  7:40                                       ` [commit] valgrind-db-attach.exp: Do not run in remote mode [Re: [patchv2] Write bpt at the ON_STACK bpt address] Jan Kratochvil
2012-07-26 23:14                                   ` [patchv2] Write bpt at the ON_STACK bpt address Maciej W. Rozycki
2012-07-27 16:02                                     ` Jan Kratochvil
2012-07-28  0:10                                       ` Maciej W. Rozycki
2012-07-28  6:06                                         ` Jan Kratochvil
2012-07-30 18:09                                           ` Maciej W. Rozycki
2012-07-26 23:15                                   ` Philippe Waroquiers
2012-07-27 16:03                                     ` Jan Kratochvil
2012-07-27 15:21                                   ` Pedro Alves
2012-07-26 21:56                                 ` [patch] [i386] Put hlt at the ON_STACK breakpoint [Re: GDB 7.4.91 available for testing] Philippe Waroquiers
2012-07-26 22:41                                   ` Philippe Waroquiers
2012-07-26  5:13                               ` Jan Kratochvil
2012-07-26 12:48                           ` Pedro Alves
2012-07-26 22:21                             ` Philippe Waroquiers
2012-07-27 14:59                               ` Pedro Alves

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=1343075809.2209.53.camel@soleil \
    --to=philippe.waroquiers@skynet.be \
    --cc=brobecker@adacore.com \
    --cc=gdb-patches@sourceware.org \
    --cc=jan.kratochvil@redhat.com \
    --cc=palves@redhat.com \
    /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