[haiku-bugs] Re: [Haiku] #10169: Double Fault Exception on usb boot x86_64

  • From: "korli" <trac@xxxxxxxxxxxx>
  • Date: Sun, 03 Nov 2013 21:31:20 -0000

#10169: Double Fault Exception on usb boot x86_64
-----------------------------+----------------------------
   Reporter:  korli          |      Owner:  axeld
       Type:  bug            |     Status:  new
   Priority:  normal         |  Milestone:  R1
  Component:  System/Kernel  |    Version:  R1/Development
 Resolution:                 |   Keywords:
 Blocked By:                 |   Blocking:
Has a Patch:  0              |   Platform:  x86-64
-----------------------------+----------------------------

Comment (by korli):

 It seems the kernel stack is the same size on 32-bit and 64-bit, which
 might explain the behavior difference between architectures. The following
 patch fixes the problem by increasing the kernel stack size by another
 page.

 Is it OK as is or would it be better to differentiate with B_HAIKU_64_BIT?

 {{{
 diff --git a/headers/private/kernel/kernel.h
 b/headers/private/kernel/kernel.h
 index a5c01e3..d068a48 100644
 --- a/headers/private/kernel/kernel.h
 +++ b/headers/private/kernel/kernel.h
 @@ -47,7 +47,7 @@
         // At least, you then know that the stack overflows in this case
 :)

  /** Size of the kernel stack */
 -#define KERNEL_STACK_SIZE              (B_PAGE_SIZE * 3)       // 12 kB
 +#define KERNEL_STACK_SIZE              (B_PAGE_SIZE * 4)       // 16 kB

  #ifdef DEBUG_KERNEL_STACKS
  #      define KERNEL_STACK_GUARD_PAGES 1
 }}}

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

Other related posts: