This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 1/2] Port gdbserver to GNU/Hurd


On 09/12/2013 04:05 AM, Yue Lu wrote:
> Honestly to say, I have copied them from function gnu_xfer_memory. But
> I think, before reference a pointer, check whether it was a NULL seems
> not a bad way :-).

We don't go around checking for NULL before _every_ pointer
dereference.  :-)

NULL pointer checks are used when the function's semantics
give special meaning to NULL, like for example, for optional
parameters.  If that's not the function's semantics, and you still
may see a NULL pointer, then that tells there's actually a bug
that triggered already elsewhere before the function in question
was called.  IOW, a NULL check in these cases is just masking out a
bug in some caller.  In some cases, we might add a gdb_assert to
catch the bug in a nicer way instead of just crashing.

I suspect that what may happen is that at some point it
was possible for GDB to select a no-longer-existing-thread
(though I can't see how in the current code), and then setting
breakpoints, or other operations that require reading memory
would crash.

-- 
Pedro Alves


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