[haiku-bugs] Re: [Haiku] #10249: Haiku built from Haiku doesn't boot without disabling SMP or NX-bit

  • From: "anevilyak" <trac@xxxxxxxxxxxx>
  • Date: Sat, 07 Dec 2013 02:59:06 -0000

#10249: Haiku built from Haiku doesn't boot without disabling SMP or NX-bit
-----------------------------+----------------------------
   Reporter:  pulkomandy     |      Owner:  bonefish
       Type:  bug            |     Status:  assigned
   Priority:  normal         |  Milestone:  R1
  Component:  System/Kernel  |    Version:  R1/Development
 Resolution:                 |   Keywords:  vm
 Blocked By:                 |   Blocking:
Has a Patch:  0              |   Platform:  All
-----------------------------+----------------------------

Comment (by anevilyak):

 Replying to [comment:34 bonefish]:
 > To verify the theory that this is a TLB invalidation issue, please print
 a stack trace of a different thread (`bt 1` should do). The way the `bt`
 command is implemented, it will write the CR3 register which, as a side
 effect, will invalidate the TLB. A single `co` should suffice to continue
 the boot process. If it does, please repeat the test once or twice more to
 be sure that wasn't just a lucky shot.

 Out of curiosity, does TLB invalidation in this manner apply to all CPUs,
 or just the current one? In this instance it should be irrelevant since
 the vbox instance for this crash is, if I remember correctly, restricted
 to emulating a single core, but in the general case, would be nice to
 know.

 > The first argument is the index of the tracing item from which to start
 searching for matching items. The index is 1-based and 0 is a special
 value for the last recorded item. The second argument's absolute value is
 the maximum number of items to print. Its sign specifies the direction in
 which the search shall be performed beginning at the start item. Negative
 means backward. As a convenience, the start item argument 0 also implies
 backward search, i.e. the actual sign of the second argument is ignored.
 TL;DR: "-100" and "100" have the same effect in this case.

 Understood, I was under the mistaken impression that the negative index
 trick was only usable for the third argument. Thanks for the
 clarification.

 >  1. {{{traced --stacktrace 0 -100 -1 #0x81000000}}}
 >     That's the same command as before, just with the "--stacktrace"
 option. It will print a stack trace for each item.

 Is a stack trace depth of 10 likely to be sufficient? That's what we
 currently have the mapping trace depth configured for on his VM.

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

Other related posts: