This is the mail archive of the insight@sources.redhat.com mailing list for the Insight project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Something is very wrong with watchpoints


Mo DeJong wrote:
> 
> I tried to set a hardware watchpoint in insight, it worked but when
> I ran the program the GUI stopped responding. It would redraw itself
> about once every 5 minutes. Has anyone else run into this?
> I am using Linux (Red Hat 6.2) on x86.
> 

I don't think the native target as support for the ardware watchpoint (unless it was
added recently).  What may have happened is that a software watchpoint is being 
implemented with single stepping.  Gdb checks things and continues the target
without the GUI noticing and may not be calling the GUI hook very frequently (I am
surprised it was called at all, as the redraws seem to indicate).

That is why I added watchpoints to the TODO list.  Now you know :-(


> Here is a trivial little example that shows how to reproduce
> the problem. Just compile this with:
> 
> % gcc -g -o watch watch.c
> 
> And type the gdb command into the console, note how the GUI
> does not redraw after you type continue.
> 
> #include <unistd.h>
> 
> int main() {
>    int i,j;
>    for (i=0, j=0; i < 100000000 ; i++) {
>      if (i%1000 == 0)
>        j++;
>    }
> }
> 
> /*
> start the program and set a breakpoint on the for loop line
> 
> (gdb) break 5
> (gdb) run
> 
> now set a watchpoint at the address of the j variable
> 
> (gdb) print &j
> (gdb) watch (the hex addr that was just printed)
> (gdb) cont
> 
> */
> 
> thanks
> Mo DeJong
> Red Hat Inc

-- 
Fernando Nasser
Red Hat Canada Ltd.                     E-Mail:  fnasser@cygnus.com
2323 Yonge Street, Suite #300
Toronto, Ontario   M4P 2C9

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]