This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Re: watchpoint hangs.
- From: Jan Kratochvil <jan dot kratochvil at redhat dot com>
- To: Guillaume Yziquel <guillaume dot yziquel at citycable dot ch>
- Cc: gdb at sourceware dot org
- Date: Sat, 2 Jan 2010 21:59:38 +0100
- Subject: Re: watchpoint hangs.
- References: <4B3FB2BC.9040104@citycable.ch>
On Sat, 02 Jan 2010 21:55:24 +0100, Guillaume Yziquel wrote:
> >(gdb) print box
> >$1 = {0x0 <repeats 64 times>}
> >(gdb) watch box
> >Watchpoint 2: box
> >(gdb) continue
> >Continuing.
>
> And it eats up 90% of one of my CPU from now on...
As it printed "Watchpoint" and not "Hardware watchpoint" it means it had to
use software watchpoint for some reason. Therefore it needs to singlestep the
code which should work but it is very very slow.
On amd64 (x86_64) there are only 4 hardware watch registers with 8 bytes range
each, that is 32 bytes of maximum hardware-watchable bytes of memory.
According to "{0x0 <repeats 64 times>}" your requested memory range is
probably larger.
Try to reduce the watched memory range in your specific debugging case.
Regards,
Jan