On Sat, Mar 19, 2022 at 1:59 AM Bernhard Übelacker
<bernha...@mailbox.org> wrote:
> I tried to reproduce the issue with the help of a qemu VM.
>
> That way I found /usr/lib/ipxe/ipxe.lkrn working with specifying
> a pentium2 CPU, but hangs with a pentium.
>
> Similarly I found the version 1.0.0+git-20150424.a25a16d-1
> does not show this issue, but all newer than this.
>
> And found in [1] a hint that building without
> TIVOLI_VMM_WORKAROUND gives a Debian package that works too.
> And indeed, attaching a debugger to the VM shows it hanging
> always executing an fxsave and iret instruction, PF flag set,
> while TIVOLI_VMM_WORKAROUND would also enable a fxsave instruction.
>
> Therefore at least either using the older package version
> or rebuilding locally with above modification
> might serve as a workaround.
>
> @Martin-Éric: Maybe you can confirm this,
> otherwise my findings might be unrelated.

@Bernhard: Thanks for the heads up.

I first tried downgrading to earlier versions found at
<https://deb.debian.org/debian/pool/main/i/ipxe/>.

1.0.0+git-20190125.36a4c85-1: Fails to launch as above.
1.0.0+git-20161027.b991c67-1: Fails to launch as above.
1.0.0+git-20141004.86285d1-1: Immediately shows me the PXE menu.

$ find . -name general.h
./debian/config/general.h
./src/config/vbox/general.h
./src/config/general.h
./src/config/qemu/general.h
./src/config/cloud/general.h

$ rgrep TIVOLI_VMM_WORKAROUND
src/config/general.h:#define    TIVOLI_VMM_WORKAROUND    /* Work
around the Tivoli VMM's garbling of SSE
src/config/qemu/general.h:#undef TIVOLI_VMM_WORKAROUND
src/arch/x86/transitions/librm.S:#ifdef TIVOLI_VMM_WORKAROUND
src/arch/x86/transitions/librm.S:#ifdef TIVOLI_VMM_WORKAROUND
src/arch/x86/transitions/librm.S:#ifdef TIVOLI_VMM_WORKAROUND

I assume that you meant in <src/config/general.h>? Where and how did
you disable that?

Martin-Éric

Reply via email to