This is a follow up to the UEFI Windows boot problems
reported after 4.7 got imported:

https://lists.freebsd.org/pipermail/freebsd-xen/2016-June/002745.html

I am using FreeBSD 12.0-CURRENT #6 r314708: Mon Mar  6 13:09:31 UTC 2017     
r...@o.saper.info:/usr/obj/usr/src/sys/GENERIC  amd64 as dom0

In the 4.5 times I could install and boot Windows 2016 Technical Preview 5 
without
major problems. In fact, I started using this as my default Windows
environment - it was working very well and very fast.

Since 4.7 upgrade I never got Tianocore OVMF to boot - it just stops
there listing available devices:

https://marcincieslak.com/tmp/ovmf/ovmf-no-boot.png

I can browse the FS0 and there is BootX64.efi there

https://marcincieslak.com/tmp/ovmf/ovmf-files.png

(not sure if "Unsupported" message is normal, never tried this
in the days Windows was working).

The zvol contains the same Windows that used to start properly, so
I suspect the filesystems there did not get corrupt. Trying
to boot the installation ISO image ends up with a same thing.

I have tried old and new ovmf images:

https://marcincieslak.com/tmp/ovmf/ovmf.bin
can be taken from http://efi.akeo.ie/OVMF/

https://marcincieslak.com/tmp/ovmf/ovmf-new.bin
extracted from 
https://www.kraxel.org/repos/jenkins/edk2/edk2.git-0-20170328.b2579.g2ed235f.x86_64.rpm

tried 32bit and 64bit versions, both start with the same effect.

To reproduce it, modify xen-tools Makefile to add two flags to CONFIGURE_ARGS:

CONFIGURE_ARGS+=        --with-extra-qemuu-configure-args="${QEMU_ARGS}" \
                        
--with-system-seabios=${LOCALBASE}/share/seabios/bios.bin \
                        --enable-ovmf \
                        --with-system-ovmf=${LOCALBASE}/share/ovmf/ovmf.bin

Complete Makefile I am using is at

https://marcincieslak.com/tmp/ovmf/Makefile

Domain configuration file:

https://marcincieslak.com/tmp/ovmf/windows-run.cfg

builder = "hvm"
memory = 4096
vcpus = 2
name = "Windows2016"
disk = [
        '/dev/zvol/zroot/windows0,raw,hda,w',
#       '/dev/zvol/zroot/vs2013,raw,hdb,w',
#        '/root/win/install.iso,raw,hdc:cdrom,r'
]
boot = "c" # Boot to hard disk image
vnc = 2
#vnclisten = "0.0.0.0"
usbdevice = 'tablet'
on_poweroff = 'destroy'
on_reboot = 'restart'
#on_crash = 'restart'
on_crash = 'destroy'
acpi = 1
bios = 'ovmf'
vif = [ 'bridge=bridge0,mac=00:16:3e:5d:0d:48' ]
videoram=16
vga = "stdvga"

It does not matter if I use "hda" or "xvda"

The qemu driver domain running looks like this:

https://marcincieslak.com/tmp/ovmf/qemu-process

/usr/local/lib/xen/bin/qemu-system-i386 \
        -xen-domid 30 \
        -chardev 
socket,id=libxl-cmd,path=/var/run/xen/qmp-libxl-30,server,nowait \
        -no-shutdown \
        -mon chardev=libxl-cmd,mode=control \
        -chardev 
socket,id=libxenstat-cmd,path=/var/run/xen/qmp-libxenstat-30,server,nowait \
        -mon chardev=libxenstat-cmd,mode=control \
        -nodefaults -no-user-config \
        -name Windows2016 -vnc 127.0.0.1:0,to=99 \
        -display none -device VGA,vgamem_mb=16 \
        -boot order=c \
        -usb -usbdevice tablet -smp 2,maxcpus=2 \
        -device rtl8139,id=nic0,netdev=net0,mac=00:16:3e:5d:0d:48 \
        -netdev type=tap,id=net0,ifname=xnb30.0-emu,script=no,downscript=no \
        -machine xenfv -m 4080 \
        -drive 
file=/dev/zvol/zroot/windows0,if=ide,index=0,media=disk,format=raw,cache=writeback

Nothing special in the "xl dmesg", Xen is just starting OVMF.

I don't know even where to start to troubleshoot this...
Anyway to get to the OVMF debug output, maybe?

I've tried some other UEFI non-Windows installers and all images behave
the same: no surprise, as no Windows code had a chance to run yet.

Marcin

_______________________________________________
freebsd-xen@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-xen
To unsubscribe, send any mail to "freebsd-xen-unsubscr...@freebsd.org"

Reply via email to