summary refs log tree commit diff stats
path: root/results/classifier/zero-shot/105/graphic/1629282
blob: a7995c272fc5ebf7d746307f749259100586dafd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
graphic: 0.946
other: 0.922
semantic: 0.912
device: 0.907
assembly: 0.906
vnc: 0.896
instruction: 0.893
mistranslation: 0.882
KVM: 0.861
boot: 0.849
socket: 0.830
network: 0.798

QEMU (still) hangs on Windows 7 install

I'm trying to install Windows 7 as guest, but the machine still hangs (more precisely, the windows icon keeps flashing, but never goes past this stage).

I think this is a different bug from https://bugs.launchpad.net/qemu/+bug/1581936.

Specifically, its happens when the OVMF BIOS is used, and I can't find any workaround (in the above bug, by changing the display, the installation doesn't hang).

The most minimal commandline that reproduces the issue is (generic format):

$QEMU_BINARY \
  -drive if=pflash,format=raw,readonly,file=$QEMU_BIOS \
  -drive if=pflash,format=raw,file=$QEMU_BIOS_TMP \
  -enable-kvm \
  -m $QEMU_MEMORY \
  -display std \
  -cpu host,kvm=off -smp 4,sockets=1,cores=4 \
  -cdrom $QEMU_WINDOWS_7_CD \
;

I'm using `OVMF_15214.fd` as BIOS.

I'll assume "OVMF_15214.fd" is from <http://www.tianocore.org/ovmf/>. It's an ancient build of OVMF (older than two and half years). The binary packaged in that ZIP file isn't even a split one, it's a unified binary that is unsuitable for the command line that you've given above.

Please either grab the most recent OVMF build from your distribution, or a bleeding edge build from <https://www.kraxel.org/repos/> (recommended). Then create a copy of the varstore template, to be used as the VM's own private variable store. Also, fix the "-display std" command line option, as in "-vga std". It will just work then.

Below I'll specify the commands that I just re-tested. Note that I'm also renaming the QEMU_BIOS and QEMU_BIOS_TMP variables (whose names are quite inappropriate) to FIRMWARE_BINARY and VARIABLE_STORE.

    # this binary corresponds to upstream git cc9a366d3b16,
    # dated "Thu Sep 29 00:34:20 2016 +0100"
    QEMU_BINARY=/opt/qemu-installed/bin/qemu-system-x86_64

    # these files are from package
    # "edk2.git-ovmf-x64-0-20160929.b2144.g84bc72f.noarch", installed
    # from kraxel.org
    FIRMWARE_BINARY=/usr/share/edk2.git/ovmf-x64/OVMF_CODE-pure-efi.fd
    VARIABLE_STORE_TEMPLATE=/usr/share/edk2.git/ovmf-x64/OVMF_VARS-pure-efi.fd
    VARIABLE_STORE=/tmp/guest1-vars.fd

    # Windows 7 installer disk
    QEMU_WINDOWS_7_CD=en_windows_7_enterprise_n_with_sp1_x64_dvd_u_677704.iso

    # other settings
    QEMU_MEMORY=2048

    # create empty variable store from pristine template if the varstore doesn't
    # exist yet, or has been lost for some reason
    if ! [ -e "$VARIABLE_STORE" ]; then
      cp -v -- "$VARIABLE_STORE_TEMPLATE" "$VARIABLE_STORE"
    fi

    $QEMU_BINARY \
        -drive if=pflash,format=raw,readonly,file="$FIRMWARE_BINARY" \
        -drive if=pflash,format=raw,file="$VARIABLE_STORE" \
        -enable-kvm \
        -m $QEMU_MEMORY \
        -vga std \
        -cpu host,kvm=off -smp 4,sockets=1,cores=4 \
        -cdrom $QEMU_WINDOWS_7_CD



Thanks! Using the OVMF provided with the Ubuntu 16.04 packages solved the issue.