[haiku-bugs] Re: [Haiku] #10279: random binary crashes, generally while compiling or doing other port work

  • From: "bonefish" <trac@xxxxxxxxxxxx>
  • Date: Wed, 18 Dec 2013 00:42:23 -0000

#10279: random binary crashes, generally while compiling or doing other port 
work
-----------------------------+----------------------------
   Reporter:  kallisti5      |      Owner:  axeld
       Type:  bug            |     Status:  new
   Priority:  high           |  Milestone:  R1/beta1
  Component:  System/Kernel  |    Version:  R1/Development
 Resolution:                 |   Keywords:  vm
 Blocked By:                 |   Blocking:
Has a Patch:  1              |   Platform:  All
-----------------------------+----------------------------

Comment (by bonefish):

 Your patch is OK in principle. It may, however, cause false positives. The
 first subconditions of the `if` check whether a SIGSEGV handler is
 installed for the team. Some programs (particularly programming language
 interpreters -- AFAIK OpenJDK, not sure about python) use those as a tool
 for their regular memory management (e.g. enlarging allocations lazily).

 Reentering KDL after getting the debug report is not necessary (in case
 that was what you intended to attach -- "bash-7459-kdl.2.txt" seems to be
 old). In the first KDL session we get the information we need (and
 "fresher").

 Omitting the `in_context <thread>` for the `dis` is somewhat important,
 though. We are already in the context of the thread anyway and we want to
 verify whether the CPU currently sees what it should see. The `in_context`
 resets the paging structures and may thus hide the problem.

 We don't need a `bt`, as the panic already prints one. And finally, the
 `mapping` is needed for the two addresses printed in the panic message
 (the read or write address and the IP). Should it have been overwritten on
 screen by the stack trace, you can reprint the message via `message`. For
 a NULL pointer, as in this case, `mapping` is not needed.

--
Ticket URL: <http://dev.haiku-os.org/ticket/10279#comment:30>
Haiku <http://dev.haiku-os.org>
Haiku - the operating system.

Other related posts: