Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Alexandru-Adrian Oltean <adrian.oltean@nxp.com>
To: 高国胜 <guosheng_gao@realsil.com.cn>,
	"Breazeal, Don" <Don_Breazeal@mentor.com>,
	"gdb@sourceware.org" <gdb@sourceware.org>
Subject: RE: hbreak reads memory
Date: Tue, 02 Aug 2016 06:53:00 -0000	[thread overview]
Message-ID: <VI1PR0401MB2671DDD27B78EEEFF3E112E6F1050@VI1PR0401MB2671.eurprd04.prod.outlook.com> (raw)
In-Reply-To: <0CEE46EB9C50E44486A861D738D3E2067ED804CC@RS-MBS02.realsil.com.cn>

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="gb2312", Size: 3123 bytes --]

Guys, I have no experience in GDB development but what I've observed and reported below seems 
like a problem in my opinion. Do you agree? Hardware breakpoints should not touch memory. I'll try to 
debug and see what's happening exactly but first I thought I'd check with you whether current behavior 
is expected or not.

Thanks,
Adrian

-----Original Message-----
From: ¸ß¹úʤ [mailto:guosheng_gao@realsil.com.cn] 
Sent: Thursday, July 28, 2016 9:32 AM
To: Alexandru-Adrian Oltean <adrian.oltean@nxp.com>; Breazeal, Don <Don_Breazeal@mentor.com>; gdb@sourceware.org
Subject: ´ð¸´: hbreak reads memory

Adrian,
 I think this is maybe due to delay slot analysis, GDB maybe need to adjust the breakpoint address.


-----ÓʼþÔ­¼þ-----
·¢¼þÈË: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] ´ú±í Alexandru-Adrian Oltean
·¢ËÍʱ¼ä: 2016Äê7ÔÂ28ÈÕ 14:28
ÊÕ¼þÈË: Breazeal, Don; gdb@sourceware.org
Ö÷Ìâ: RE: hbreak reads memory

Hi Don,

I forgot to mention one important thing in my previous email - I'm setting breaks using addresses not symbols. 
So even with this approach I'm still seeing that memory is being accessed. I'm expecting a hbreak on a given address to skip that function prologue analysis. 

Here's what I see when activating debug in gdb:
hbreak *0xfff54d64
Sending packet: $mfff54d64,4#36...Ack
Packet received: E01
Hardware assisted breakpoint 3 at 0xfff54d64

Regarding your suggestions, I know for sure that setting memory areas read-only or inaccessible helps. The other suggestion involving 'set trust-readonly-sections' seems to allow gdb to access memory.  However, I'd avoid managing memory zones this way since HW breaks should really not touch memory at all.

Thanks,
Adrian

-----Original Message-----
From: Breazeal, Don [mailto:Don_Breazeal@mentor.com]
Sent: Thursday, July 28, 2016 12:42 AM
To: Alexandru-Adrian Oltean <adrian.oltean@nxp.com>; gdb@sourceware.org
Subject: RE: hbreak reads memory

Adrian,
I think this is due to some function prologue analysis.  You might try setting the breakpoint on an address, e.g. instead of 'hbreak foo' use 'hbreak *foo'.  The breakpoint should then be on the address of the entry point to the function and the memory accesses may be reduced or eliminated.

You might also try 'set trust-readonly-sections' and/or set mem inaccessible-by-default.  Those may or may not help.
--Don

> -----Original Message-----
> From: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] On 
> Behalf Of Alexandru-Adrian Oltean
> Sent: Tuesday, July 26, 2016 11:29 PM
> To: gdb@sourceware.org
> Subject: hbreak reads memory
> 
> Hi everyone,
> 
> I noticed that setting a hardware break using hbreak will trigger a 
> memory access at the address where the breakpoint is supposed to be 
> installed. Can someone explain why is that memory access needed? I'm 
> thinking that we might be in a situation where that memory area is not 
> yet initialized/accessible (maybe MMU not configured yet) and the 
> access corrupts the debugged target.
> 
> Thanks,
> Adrian

\x16º&ÖëzÛ«ŸŽvÓ¹b²Ö«r\x18\x1d

  parent reply	other threads:[~2016-08-02  6:53 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-07-27  6:29 Alexandru-Adrian Oltean
2016-07-27 21:41 ` Breazeal, Don
2016-07-28  6:28   ` Alexandru-Adrian Oltean
     [not found]     ` <0CEE46EB9C50E44486A861D738D3E2067ED804CC@RS-MBS02.realsil.com.cn>
2016-08-02  6:53       ` Alexandru-Adrian Oltean [this message]
     [not found]     ` <CAH=s-PO2rUWbiFwMgtbsqDMNQnPB0fdmsmxe2HU9y4z7F7=pFQ@mail.gmail.com>
2016-08-02  9:15       ` Alexandru-Adrian Oltean

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=VI1PR0401MB2671DDD27B78EEEFF3E112E6F1050@VI1PR0401MB2671.eurprd04.prod.outlook.com \
    --to=adrian.oltean@nxp.com \
    --cc=Don_Breazeal@mentor.com \
    --cc=gdb@sourceware.org \
    --cc=guosheng_gao@realsil.com.cn \
    /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