7.3 is broken on FreeBSD

Yuri yuri@rawbw.com
Wed Jul 6 22:47:00 GMT 2011


On 07/06/2011 15:42, Joel Brobecker wrote:
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 8018041c0 (LWP 101940)]
> Can you look at gdb/config.in in the build directory, and tell
> me if the following macro is defined?
>
>          HAVE_PT_GETDBREGS

I have #undef HAVE_PT_GETDBREGS


>
> It looks like there definitely is a weakness that leaves the
> i386_dr_low structure unset if that macro is not defined. But
> as far as I can tell, it's working just great for me.
>
> The code in question is _initialize_i386fbsd_nat:
>
>     #ifdef HAVE_PT_GETDBREGS
>
>       i386_use_watchpoints (t);
>
>       i386_dr_low.set_control = i386bsd_dr_set_control;
>       i386_dr_low.set_addr = i386bsd_dr_set_addr;
>       i386_dr_low.reset_addr = i386bsd_dr_reset_addr;
>       i386_dr_low.get_status = i386bsd_dr_get_status;
>       i386_set_debug_register_length (4);
>
>     #endif /* HAVE_PT_GETDBREGS */
>
> I don't have FreeBSD 8.2 lying around, can you see if
> PT_GETDBREGS is defined in /usr/include/sys/ptrace.h?


#define PT_GETDBREGS    37      /* get debugging registers */


Yuri



More information about the Gdb mailing list