Bug 1339528

Summary: SLOF boot menu gets delayed if press 'F12' key for multiple times
Product: Red Hat Enterprise Linux 7 Reporter: Qunfang Zhang <qzhang>
Component: SLOFAssignee: Thomas Huth <thuth>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: medium    
Version: 7.2CC: lvivier, mrezanin, thuth, xuma
Target Milestone: rc   
Target Release: ---   
Hardware: ppc64   
OS: Linux   
Whiteboard:
Fixed In Version: SLOF-20160223-4.gitdbbfda4.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-11-04 04:33:59 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Qunfang Zhang 2016-05-25 09:10:31 UTC
Description of problem:
Hit this bug during testing bug 1247956. Details in: bug 1247956 comment 20.

Version-Release number of selected component (if applicable):
qemu-img-rhev-2.6.0-2.el7.ppc64le
SLOF-20160223-3.gitdbbfda4.el7.noarch

How reproducible:
Always

Steps to Reproduce:
1.Boot guest with "boot=menu" parameters, eg:

# /usr/libexec/qemu-kvm -name test_7_31_virtionet -machine pseries,accel=kvm,usb=off -m 4G -smp 4,sockets=1,cores=4,threads=1 -uuid 8aeab7e2-f341-4f8c-80e8-59e2968d85c2 -realtime mlock=off -nodefaults -monitor stdio -rtc base=utc -device spapr-vscsi,id=scsi0,reg=0x1000 -drive file=rhel72-ppc64le-virtio.qcow2,if=none,id=drive-scsi0-0-0-0,format=qcow2,cache=none -device scsi-hd,bus=scsi0.0,drive=drive-scsi0-0-0-0,bootindex=1,id=scsi0-0-0-0  -drive if=none,id=drive-scsi0-0-1-0,readonly=on -device scsi-cd,bus=scsi0.0,drive=drive-scsi0-0-1-0,bootindex=2,id=scsi0-0-1-0 -vnc :10 -msg timestamp=on -usb -device usb-tablet,id=tablet1  -vga std -qmp tcp:0:4666,server,nowait -netdev tap,id=hostnet1,script=/etc/qemu-ifup,vhost=on -device virtio-net-pci,netdev=hostnet1,id=net1,mac=00:54:5a:5f:5b:5c,disable-legacy=off,disable-modern=on -boot menu=on  -drive file=disk.qcow2,if=none,id=drive-scsi0-0-0-1,format=qcow2,cache=none -device scsi-hd,bus=scsi0.0,drive=drive-scsi0-0-0-1,bootindex=3,id=scsi0-0-0-1 -chardev socket,id=serial_id_serial0,path=/tmp/serial,server,nowait -device spapr-vty,reg=0x30000000,chardev=serial_id_serial0

2. Press "F12" for multiple times at the early stage of guest booting process.

3. It takes around half minute to show the boot menu if I press F12 4 times.

"Select boot device:"

1. /vdevice/v-scsi@1000/disk@8000000000000000: /vdevice/v-scsi@1000/disk@8000000000000000
2. /vdevice/v-scsi@1000/disk@8100000000000000: /vdevice/v-scsi@1000/disk@8100000000000000
3. /vdevice/v-scsi@1000/disk@8200000000000000: /vdevice/v-scsi@1000/disk@8200000000000000


Actual results:
Boot menu delays to show up if press F12 multiple times.

Expected results:
Boot menu should show up quickly.

Additional info:
If only press F12 once, works well.

Comment 1 Thomas Huth 2016-05-25 13:08:16 UTC
Looks like this is a flavour of a problem that has recently already been fixed in upstream:

 http://git.qemu.org/?p=SLOF.git;a=commitdiff;h=ca8fb51e05feca05

When I apply that patch, it's working fast for me again.

However, there's another problem left when hitting F12 multiple times - sometimes the selection at the boot menu is not accepted properly. I've suggested a patch upstream to fix that issue, too:

 http://patchwork.ozlabs.org/patch/626120/

Comment 2 Miroslav Rezanina 2016-06-07 07:10:08 UTC
Fix included in SLOF-20160223-4.gitdbbfda4.el7

Comment 4 Xujun Ma 2016-06-14 10:19:46 UTC
Reproduced the issue on old version:

Version-Release number of selected component (if applicable):
qemu-img-rhev-2.6.0-2.el7.ppc64le
SLOF-20160223-3.gitdbbfda4.el7.noarch

Steps to Reproduce:
1.Start  guest with with "boot=menu" parameters:
# /usr/libexec/qemu-kvm -name test_7_31_virtionet -machine pseries,accel=kvm,usb=off -m 4G -smp 4,sockets=1,cores=4,threads=1 -uuid 8aeab7e2-f341-4f8c-80e8-59e2968d85c2 -realtime mlock=off -nodefaults -monitor stdio -rtc base=utc -device spapr-vscsi,id=scsi0,reg=0x1000 -drive file=rhel72-ppc64le-virtio.qcow2,if=none,id=drive-scsi0-0-0-0,format=qcow2,cache=none -device scsi-hd,bus=scsi0.0,drive=drive-scsi0-0-0-0,bootindex=1,id=scsi0-0-0-0  -drive if=none,id=drive-scsi0-0-1-0,readonly=on -device scsi-cd,bus=scsi0.0,drive=drive-scsi0-0-1-0,bootindex=2,id=scsi0-0-1-0 -vnc :10 -msg timestamp=on -usb -device usb-tablet,id=tablet1  -vga std -qmp tcp:0:4666,server,nowait -netdev tap,id=hostnet1,script=/etc/qemu-ifup,vhost=on -device virtio-net-pci,netdev=hostnet1,id=net1,mac=00:54:5a:5f:5b:5c,disable-legacy=off,disable-modern=on -boot menu=on  -drive file=disk.qcow2,if=none,id=drive-scsi0-0-0-1,format=qcow2,cache=none -device scsi-hd,bus=scsi0.0,drive=drive-scsi0-0-0-1,bootindex=3,id=scsi0-0-0-1 -chardev socket,id=serial_id_serial0,path=/tmp/serial,server,nowait -device spapr-vty,reg=0x30000000,chardev=serial_id_serial0


2.Press "F12" for multiple times at the early stage of guest booting process.

3.Press "F12" again after displays boot menu

4.Choose the num of system disk and press enter key

Actual results:
2.Boot menu delays to show up after half minute.
4.Can't boot from system disk,and displays "Invalid choice!" then displays SLOF prompt.

Verified the issue on the latest build:
Version-Release number of selected component (if applicable):
qemu-img-rhev-2.6.0-2.el7.ppc64le
SLOF-20160223-4.gitdbbfda4.el7.noarch


Steps to Verify:
1.Start  guest with with "boot=menu" parameters:
# /usr/libexec/qemu-kvm -name test_7_31_virtionet -machine pseries,accel=kvm,usb=off -m 4G -smp 4,sockets=1,cores=4,threads=1 -uuid 8aeab7e2-f341-4f8c-80e8-59e2968d85c2 -realtime mlock=off -nodefaults -monitor stdio -rtc base=utc -device spapr-vscsi,id=scsi0,reg=0x1000 -drive file=rhel72-ppc64le-virtio.qcow2,if=none,id=drive-scsi0-0-0-0,format=qcow2,cache=none -device scsi-hd,bus=scsi0.0,drive=drive-scsi0-0-0-0,bootindex=1,id=scsi0-0-0-0  -drive if=none,id=drive-scsi0-0-1-0,readonly=on -device scsi-cd,bus=scsi0.0,drive=drive-scsi0-0-1-0,bootindex=2,id=scsi0-0-1-0 -vnc :10 -msg timestamp=on -usb -device usb-tablet,id=tablet1  -vga std -qmp tcp:0:4666,server,nowait -netdev tap,id=hostnet1,script=/etc/qemu-ifup,vhost=on -device virtio-net-pci,netdev=hostnet1,id=net1,mac=00:54:5a:5f:5b:5c,disable-legacy=off,disable-modern=on -boot menu=on  -drive file=disk.qcow2,if=none,id=drive-scsi0-0-0-1,format=qcow2,cache=none -device scsi-hd,bus=scsi0.0,drive=drive-scsi0-0-0-1,bootindex=3,id=scsi0-0-0-1 -chardev socket,id=serial_id_serial0,path=/tmp/serial,server,nowait -device spapr-vty,reg=0x30000000,chardev=serial_id_serial0


2.Press "F12" for multiple times at the early stage of guest booting process.

3.Press "F12" again after displays boot menu

4.Choose the num of system disk and press enter key

Actual results:
2.Can display boot menu smoothly and no any delay.
4.Can boot from system disk and no any error message.

So two bugs have been fixed.

Comment 6 errata-xmlrpc 2016-11-04 04:33:59 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHEA-2016-2355.html