Bug 1059034 - seabios will hang when sendkey ctrl-alt-delete after seabios give info "No bootable device."
Summary: seabios will hang when sendkey ctrl-alt-delete after seabios give info "No bo...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: seabios
Version: 7.0
Hardware: x86_64
OS: Linux
low
low
Target Milestone: rc
: ---
Assignee: Gerd Hoffmann
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On: 1101500
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-01-29 03:09 UTC by Jun Li
Modified: 2015-03-05 08:15 UTC (History)
12 users (show)

Fixed In Version: seabios-1.7.5-1.el7
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-03-05 08:15:06 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2015:0345 0 normal SHIPPED_LIVE seabios bug fix and enhancement update 2015-03-05 12:27:47 UTC

Description Jun Li 2014-01-29 03:09:20 UTC
Description of problem:
Boot guest with >=21 xhci controler, seabios will give info "No bootable device".
Then sendkey ctrl-alt-delete to reboot qemu-kvm. But qemu-kvm will hang at booting seabios.


Version-Release number of selected component (if applicable):
seabios-bin-1.7.2.2-10.el7.x86_64
qemu-kvm-1.5.3-41.el7.x86_64
3.10.0-79.el7.x86_64

How reproducible:
100%

Steps to Reproduce:
1.Boot guest with >=21 xhci controler via the following shell script.
# sh 4230878-capability-of-xhci-attached-to-switch.sh 21
# cat 4230878-capability-of-xhci-attached-to-switch.sh
#! /bin/sh
CLI="/usr/libexec/qemu-kvm -S -M q35 -m 4G -smp 4,socket=2,core=2,thread=1 \
-device virtio-scsi-pci,bus=pcie.0,id=scsi,addr=0x6 \
-drive file=/home/juli/rhel7.0.qcow2,format=qcow2,if=none,media=disk,id=aa \
-device scsi-hd,drive=aa,id=sys-image,bootindex=0 \
-boot menu=on,strict=on \
-monitor stdio \
-serial unix:/tmp/ttyS0,server,nowait \
-spice port=5931,disable-ticketing \
-vga qxl -global qxl-vga.revision=3 \
-chardev stdio,id=log \
-device isa-debugcon,iobase=0x402,chardev=log"
CLI="$CLI -device ioh3420,bus=pcie.0,id=root.0 "
CLI="$CLI -device x3130-upstream,bus=root.0,id=upstream1,multifunction=on "
CLI="$CLI -device xio3130-downstream,bus=upstream1,id=downstream1,chassis=1 "
NUM_DOWNSTREAM=${1:-255}
for ((i=1,i_downstream=1;i<=$NUM_DOWNSTREAM;i++,i_downstream++)); do
    #m=$((i/7))
    #n=$((i%7+1))
    #m=`printf "%02x" $m`
    #n=`printf "%02x" $n`
#echo $i_downstream
    CLI="$CLI -device nec-usb-xhci,bus=downstream1,id=usb_controller$i"
    CLI="$CLI -drive file=/home/juli/usb-storages/usb$i,if=none,format=qcow2,id=aa-usb$i,media=disk "
    CLI="$CLI -device usb-storage,drive=aa-usb$i,bus=usb_controller$i.0,id=device-usb$i"
done
$CLI

2.sendkey ctrl-alt-delete via HMP when seabios give info "No bootable device".
(qemu) sendkey ctrl-alt-delete
3.

Actual results:
(qemu) sendkey ctrl-alt-delete
(qemu) In resume (status=0)
In 32bit resume
Attempting a hard reboot
xhci: reset while running!
xhci: reset while running!
xhci: reset while running!
xhci: reset while running!
xhci: reset while running!
xhci: reset while running!
xhci: reset while running!
Start bios (version seabios-1.7.2.2-10.el7)
Ram Size=0xb0000000 (0x0000000050000000 high)
Relocating low data from 0x000e4140 to 0x000ef780 (size 2161)
Relocating init from 0x000e49b1 to 0xaffe2e30 (size 53415)

Expected results:
No seabios hang. Can see the seabios info "No bootable device" again.

Additional info:

Comment 4 Gerd Hoffmann 2014-07-03 09:38:22 UTC
please restest with seabios 1.7.5 builds:
http://people.redhat.com/ghoffman/bz1101500/

Comment 5 Jun Li 2014-07-04 01:54:35 UTC
> please restest with seabios 1.7.5 builds:
> http://people.redhat.com/ghoffman/bz1101500/

Hi Gerd,

I just do following retestings.
---
1> Retest with 
# rpm -qa|grep seabios
seabios-bin-1.7.5-1.el7_0.bz1101500.3.x86_64
seabios-1.7.5-1.el7_0.bz1101500.3.x86_64
# rpm -qa|grep qemu
qemu-kvm-1.5.3-65.el7.x86_64

Result:
This bz has gone. After comment #0 step 2, qemu-kvm can be reboot again.
---
2> Retest with
# rpm -qa|grep seabios
seabios-1.7.2.2-12.el7.x86_64
seabios-bin-1.7.2.2-12.el7.x86_64
# rpm -qa|grep qemu
qemu-kvm-1.5.3-65.el7.x86_64

Result:
This bz has gone. After comment #0 step 2, qemu-kvm can be reboot again.
---
3> Retest with
# rpm -qa|grep seabios
seabios-1.7.2.2-10.el7.x86_64
seabios-bin-1.7.2.2-10.el7.x86_64
# rpm -qa|grep qemu
qemu-kvm-1.5.3-65.el7.x86_64

Result:
This bz can be reproduced.

======

FYI, I just do the above retestings. Using the newest qemu-kvm this bz has gone.

Any further testing needed, free to update it in the bz.

Best Regards,
Jun Li

Comment 6 FuXiangChun 2014-07-29 10:40:00 UTC
reproduce this bug with seabios-1.7.2.2-10.el7.x86_64 & qemu-kvm-1.5.3-60.el7.x86_64.

according to comment0's steps. 

result:
1.HMP output

No bootable device.

(qemu) sendkey alt-ctrl-delete
(qemu) In resume (status=0)
In 32bit resume
Attempting a hard reboot
xhci: reset while running!
xhci: reset while running!
xhci: reset while running!
xhci: reset while running!
xhci: reset while running!
xhci: reset while running!
xhci: reset while running!
Start bios (version seabios-1.7.2.2-10.el7)
Ram Size=0x80000000 (0x0000000080000000 high)
Relocating low data from 0x000e4140 to 0x000ef780 (size 2161)
Relocating init from 0x000e49b1 to 0x7ffe2e30 (size 53415)

2. guest show black screen

verify this bug with seabios-1.7.5-1.el7.x86_64.

according to comment 0.

result:
1. Guest boot successfully.

2. sendkey alt-ctrl-delete works well


so. issue has gone.

Comment 9 Xiaoqing Wei 2015-01-22 08:14:16 UTC
Based on C#6, this issue has been resolved in seabios-1.7.5-1.el7.x86_64

Moving to VERIFIED.

Comment 11 errata-xmlrpc 2015-03-05 08:15:06 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/RHBA-2015-0345.html


Note You need to log in before you can comment on or make changes to this bug.