From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eli Zaretskii To: Mark Salter Cc: kettenis@science.uva.nl, msnyder@cygnus.com, gdb-patches@sources.redhat.com Subject: Re: [PATCH]: Make Linux use the new unified x86 watchpoint support Date: Wed, 28 Mar 2001 01:19:00 -0000 Message-id: References: <200103271350.f2RDoeY17397@deneb.localdomain> X-SW-Source: 2001-03/msg00517.html On Tue, 27 Mar 2001, Mark Salter wrote: > When a read wathcpoint is triggered, the target stops and informs gdb. > In breakpoint.c, gdb sees that there are read or access watchpoints set > and that the data address reported by the target matches. This causes > watchpoint_check() to be called. The problem is that watchpoint_check() > will try to read from the watched data area to see if it changed, but > this is done before gdb has removed watchpoints from the target. This > causes the target to respond with an error when gdb tries to access the > watched area. Sorry, I don't understand: why does reading a watched region generate an error? At least in the x86 implementation, watchpoints are set to be task-local, so reading the data from GDB, which is another process, should not produce any errors. Am I missing something? Could you please post a reproducible test case where this happens, and tell what host/target do you see that with?