On Thu, Feb 19, 2015 at 01:50:59PM +0000, Wei Liu wrote:
> Hi all
> 
> When I was trying to debug a double fault on 5.6, I found the trap frame
> looked a bit strange. After some investigation and reading source
> code, I found that double fault handling looked problematic.
> 
> Per Intel SDM volume 3A, processor will push 0 to stack as error code when
> double fault occurs. Shouldn't it use TRAP instead of ZTRAP in vector.S?
> I think i386's locore.S looks OK in that regard.
> 
> I only started reading OpenBSD source code since yesterday, feel free
> to correct / ignore me if I'm wrong.
> 
> Wei.
> 
> --- vector.S.~1.34.~    Sat Nov  2 14:23:38 2013
> +++ vector.S    Thu Feb 19 12:01:16 2015
> @@ -126,7 +126,7 @@
>         call    _C_LABEL(fpudna)
>         INTRFASTEXIT
>  IDTVEC(trap08)
> -       ZTRAP(T_DOUBLEFLT)
> +       TRAP(T_DOUBLEFLT)
>  IDTVEC(trap09)
>         ZTRAP(T_FPOPFLT)
>  IDTVEC(trap0a)
> 

Finally got around to committing this, sorry for the delay.

-ml

Reply via email to