Bug 1459170
Summary: | SLOF: Can't boot from virtio-scsi disk behind pci-bridge: E3405: No such device | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | Andrea Bolognani <abologna> |
Component: | qemu-kvm | Assignee: | Thomas Huth <thuth> |
Status: | CLOSED ERRATA | QA Contact: | xianwang <xianwang> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 7.4-Alt | CC: | bugproxy, hannsj_uhl, juzhang, knoel, michen, qzhang, rbalakri, virt-maint, xianwang, zhengtli |
Target Milestone: | rc | Keywords: | Patch |
Target Release: | 7.4-Alt | ||
Hardware: | ppc64le | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | qemu-kvm-2.9.0-15.el7a | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2017-11-09 11:28:46 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: | |||
Bug Depends On: | |||
Bug Blocks: | 1440030 |
Description
Andrea Bolognani
2017-06-06 12:58:16 UTC
The problem is the "pci-bridge" string in the boot path "/pci@800000020000000/pci-bridge@1/scsi@1/disk@100000000000000" ... SLOF does not use "pci-bridge" but "pci" instead: 0 > devalias disk /pci@800000020000000/pci@1/scsi@1/disk@100000000000000 Looks like we've got to teach QEMU to pass a different string for PCI bridges... Suggested patch upstream: https://marc.info/?i=1496823627-17609-1-git-send-email-thuth@redhat.com Fix included in qemu-kvm-2.9.0-15.el7a This bug is reproduced on qemu-kvm-rhev-2.9.0-7.el7.ppc64le, and works well on qemu-kvm-2.9.0-16.el7a.ppc64le. Bug reproduction: Host: 4.11.0-10.el7a.ppc64le qemu-kvm-rhev-2.9.0-7.el7.ppc64le SLOF-20170303-4.git66d250e.el7.noarch Guest: (4.11.0-10.el7a.ppc64le) 7.4 (Pegas) steps: 1.Boot guest with following qemu cli: /usr/libexec/qemu-kvm \ -name 'Pegas7.4' \ -sandbox off \ -machine pseries,accel=kvm \ -nodefaults \ -device pci-bridge,chassis_nr=1,id=pci.1,bus=pci.0,addr=0x1 \ -device virtio-serial-pci,id=virtio_serial_pci0,bus=pci.0,addr=04 \ -device nec-usb-xhci,id=usb1,bus=pci.0,addr=06 \ -device virtio-scsi-pci,id=controller_scsi,bus=pci.1,addr=0x1 \ -device virtio-net-pci,mac=9a:4f:50:51:52:53,id=id9HRc5V,vectors=4,netdev=idjlQN53,bus=pci.0,addr=09 \ -netdev tap,id=idjlQN53,vhost=off,script=/etc/qemu-ifup,downscript=/etc/qemu-ifdown \ -drive file=/home/xianwang/dhcp_server.qcow2,id=drive_scsi1,if=none,snapshot=off,aio=native,cache=none,werror=stop,rerror=stop \ -device scsi-hd,id=scsi1,drive=drive_scsi1,bus=controller_scsi.0,bootindex=1 \ -drive file=/home/xianwang/Pegas-7.4-20170530.n.0-Server-ppc64le-dvd1.iso,id=drive_cd1,if=none,snapshot=off,aio=native,cache=none,media=cdrom \ -device scsi-cd,id=cd1,drive=drive_cd1,bus=controller_scsi.0 \ -m 4096 \ -monitor stdio \ -vnc :1 \ -qmp tcp:0:8881,server,nowait \ -smp 4,maxcpus=4 \ -device usb-tablet,id=usb-tablet1,bus=usb1.0,port=2 \ -device usb-mouse,id=usb-mouse,bus=usb1.0,port=3 \ -rtc base=utc,clock=host \ -boot order=cdn,once=n,menu=on,strict=on \ -enable-kvm \ -chardev socket,id=console1,path=/tmp/console1,server,nowait \ -device spapr-vty,chardev=console1 \ 2.Open a console port in the same host to check the boot info: # nc -U /tmp/console1 result: slof can't boot from the disk which with "pci-bridge" string in the boot path Trying to load: from: /pci@800000020000000/pci-bridge@1/scsi@1/disk@100000000000000 ... E3405: No such device E3407: Load failed Type 'boot' and press return to continue booting the system. Type 'reset-all' and press return to reboot the system. Ready! 0 > ^C Bug verification: Host: 4.11.0-10.el7a.ppc64le qemu-kvm-2.9.0-16.el7a.ppc64le SLOF-20170303-4.git66d250e.el7.noarch Guest: (4.11.0-10.el7a.ppc64le) 7.4 (Pegas) steps are same as bug reproduction. result: slof can boot from hard disk which with "pci" string in the boot path Trying to load: from: /pci@800000020000000/pci@1/scsi@1/disk@100000000000000 ... Successfully loaded Red Hat Enterprise Linux Server (4.11.0-10.el7a.ppc64le) 7.4 (Pegas) Red Hat Enterprise Linux Server (4.11.0-5.el7.ppc64le) 7.4 (Pegas) Red Hat Enterprise Linux Server (0-rescue-bdba9f21cc794630bbabb06c45e2c8> So, this bug is fixed. 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://access.redhat.com/errata/RHEA-2017:3169 |