GDB library to insert and delete watchpoints

Stan Shebs stan@codesourcery.com
Fri Dec 4 08:51:00 GMT 2009


Aravinda wrote:
> Hi,
>
> Im working on a project that currently requires inserting and deleting
> watchpoints to monitor buffer overruns. I was looking at the
> gdb-internals documentation which talks about a gdb library that can
> be used to do exactly this. But I couldnt find more info on this. Im
> looking for a ready to use library to be used with a kernel module
> that allows for modifying the debug registers. kindly point me to any
> sources if it can be done.
>   
It just so happens that CodeSourcery recently did this for a customer 
that was using a debugging stub that ran as one of several threads in 
the application.  It does need its own driver to modify the debug 
registers, and the stub calls it once it has done the bit-twiddling on 
mirrors of the registers.  While it works well enough to have one thread 
set the debug registers of a different thread in a Linux app, there is 
some fancy dancing to make this work in nonstop - with all the threads 
running at once, you can get nasty races all over the place.  
Unfortunately, this is all CodeSourcery proprietary code and 
intermingled with the customer's app to boot, so I can't send you a copy.

Stan



More information about the Gdb mailing list