bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: git-bisect results on gnumach


From: Svante Signell
Subject: Re: git-bisect results on gnumach
Date: Fri, 03 Apr 2020 16:16:30 +0200
User-agent: Evolution 3.30.5-1

On Fri, 2020-04-03 at 16:11 +0200, Svante Signell wrote:
> Hello,
> 
> After having problems to boot the cross-built Hurd from the latest
> hurd/gnumach/mig git repos bisecting gnumach with git-bisect the
> following bad commit was found (breaking --enable-pae according to
> Samuel):
> 
> 0b3504b6db86c531e8b53b8e9aa9030db6e72357 is the first bad commit
> commit 0b3504b6db86c531e8b53b8e9aa9030db6e72357
> Author: Samuel Thibault <samuel.thibault@ens-lyon.org>
> Date:   Sun Mar 18 20:31:22 2012 +0100
> 
>     pmap.h: Add 64bit variant
>     
>     * i386/intel/pmap.h (L4SHIFT, L4MASK, lin2l4num): New macros
>     (PDPNUM, PDPMASK, set_pmap): Add 64bit variant. Make PAE use the
> 64bit mask
>     too.
>     (pmap): Add l4base, user_l4base, user_pdpbase fields.
>     * i386/intel/pmap.c (pmap_bootstrap): Clear the whole PDP. Enable
> write
>     bit in PDP. Set user pagetable to NULL. Initialize l4base.
>     (pmap_clear_bootstrap_pagetable): Add 4th-level support.
>     (pmap_ceate): Clear the whole PDP. Enable write bit in PDP.
> Initialize
>     l4base, user_pdpbase, user_l4base.
>     (pmap_destroy): Clear l4base, user_pdpbase, user_l4base.
>     * i386/i386at/model_dep.c (i386at_init): Load l4base on 64bits.
> 
>  i386/i386at/model_dep.c |  10 ++--
>  i386/intel/pmap.c       | 120
> ++++++++++++++++++++++++++++++++++++++++++------
>  i386/intel/pmap.h       |  41 ++++++++++++++++-
>  3 files changed, 153 insertions(+), 18 deletions(-)

Some more info:
The problem showed up in kvm as a hardware error when running the built
image with qemu:
qemu-system-x86_64 -chardev \
stdio,id=char0,logfile=serial.log,signal=off -serial chardev:char0 \
-- enable-kvm -m 2048 hurd-cross.img

Serial console output:
Loading GNU Mach
Loading the Hurd ...
KVM: entry failed, hardware error 0x80000021

If you're running a guest on an Intel machine without unrestricted mode
support, the failure can be most likely due to the guest entering an
invalid
state for Intel VT. For example, the guest maybe running in big real
mode
which is not supported on less recent Intel processors.

EAX=80010011 EBX=f5af0000 ECX=f5af0000 EDX=078bfbfd
ESI=35af4000 EDI=f67fe020 EBP=c11ea214 ESP=c11ea1ec
EIP=c1000317 EFL=00000086 [--S--P-] CPL=0 II=0 A20=1 SMM=0 HLT=0
ES =0010 40000000 ffffffff 00c09300 DPL=0 DS   [-WA]
CS =0008 40000000 ffffffff 00c09b00 DPL=0 CS32 [-RA]
SS =0010 40000000 ffffffff 00c09300 DPL=0 DS   [-WA]
DS =0010 40000000 ffffffff 00c09300 DPL=0 DS   [-WA]
FS =0000 00000000 ffffffff 00c00000
GS =0000 00000000 ffffffff 00c00000
LDT=0000 00000000 0000ffff 00008200 DPL=0 LDT
TR =0000 00000000 0000ffff 00008b00 DPL=0 TSS32-busy
GDT=     01000090 0000001f
IDT=     00000000 00000000
CR0=80010011 CR2=00000000 CR3=35aef000 CR4=00000020
DR0=0000000000000000 DR1=0000000000000000 DR2=0000000000000000
DR3=0000000000000000 
DR6=00000000ffff0ff0 DR7=0000000000000400
EFER=0000000000000000
Code=0f 20 e0 83 c8 20 0f 22 e0 0f 20 c0 0d 00 00 01 80 0f 22 c0 <0f>
20 c0 25 ff ff ff 9f 0f 22 c0 80 e6 20 75 79 eb 00 e8 42 69 00 00 e8 bd
69 00 00 e8 88





reply via email to

[Prev in Thread] Current Thread [Next in Thread]