Bug 2227418
| Summary: | qemu-system-ppc64 can't boot image from nvme driver | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | JianHong Yin <jiyin> |
| Component: | qemu | Assignee: | Fedora Virtualization Maintainers <virt-maint> |
| Status: | NEW --- | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | medium | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 38 | CC: | berrange, cfergeau, crobinso, mcascell, pbonzini, philmd, rjones, virt-maint, xzhou |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | Type: | --- | |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
my reproducer based on kiss-vm ''' 1. install kiss-vm curl -s https://raw.githubusercontent.com/tcler/kiss-vm-ns/master/utils/kiss-update.sh|sudo bash && sudo vm prepare 2. create vm that boot from nvme vm create CentOS-9-stream -n c9s-nvmeboot --arch ppc64le --nvmeboot ''' |
qemu-system-ppc64 can't boot image from nvme driver ''' Escape character is ^] (Ctrl + ]) Populating /vdevice methods Populating /vdevice/vty@30000000 Populating /vdevice/nvram@71000000 Populating /pci@800000020000000 00 0800 (D) : 1af4 1000 virtio [ net ] 00 1000 (D) : 1af4 1000 virtio [ net ] 00 1800 (D) : 1b36 000d serial bus [ usb-xhci ] 00 2000 (D) : 1af4 1004 virtio [ scsi ] Populating /pci@800000020000000/scsi@4 SCSI: Looking for devices 100000000000000 CD-ROM : "QEMU QEMU CD-ROM 2.5+" 00 2800 (D) : 1af4 1003 virtio [ serial ] 00 3000 (D) : 1af4 1002 legacy-device* 00 3800 (D) : 1af4 1050 virtio [ gpu ] 00 8000 (D) : 1b36 0010 mass-storage* 00 8800 (D) : 1b36 0010 mass-storage* No NVRAM common partition, re-initializing... Scanning USB XHCI: Initializing USB Keyboard Using default console: /vdevice/vty@30000000 Welcome to Open Firmware Copyright (c) 2004, 2017 IBM Corporation All rights reserved. This program and the accompanying materials are made available under the terms of the BSD License available at http://www.opensource.org/licenses/bsd-license.php Trying to load: from: /pci@800000020000000/mass-storage@10 ... E3404: Not a bootable device! Trying to load: from: /pci@800000020000000/scsi@4/disk@100000000000000 ... E3404: Not a bootable 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 > boot Trying to load: from: /pci@800000020000000/mass-storage@10 ... E3404: Not a bootable device! Trying to load: from: /pci@800000020000000/scsi@4/disk@100000000000000 ... E3404: Not a bootable device! E3407: Load failed Type 'boot' and press return to continue booting the system. Type 'reset-all' and press return to reboot the system. ok 0 > ''' Reproducible: Always Steps to Reproduce: 1. create vm with nvme device ''' <qemu:commandline> <qemu:arg value='-cpu'/> <qemu:arg value='power10'/> <qemu:arg value='-drive'/> <qemu:arg value='file=/home/jiyin/VMs/RHEL-9.3.0-20230729.33/jiyin-rhel-930-2023072933_ppc64/rhel-guest-image-9.3-20230729.33.ppc64le.qcow2,format=qcow2,if=none,id=NVME0'/> <qemu:arg value='-device'/> <qemu:arg value='nvme,drive=NVME0,serial=nvme-0,bootindex=0,addr=0x10'/> </qemu:commandline> ''' virt-install command line: ''' virt-install --connect=qemu:///system --virt-type=qemu --accelerate '--qemu-commandline=-cpu power10' '--qemu-commandline=-drive file=/home/jiyin/VMs/RHEL-9.3.0-20230729.33/jiyin-rhel-930-2023072933_ppc64/rhel-guest-image-9.3-20230729.33.ppc64le.qcow2,format=qcow2,if=none,id=NVME0 -device nvme,drive=NVME0,serial=nvme-0,bootindex=0,addr=0x10' --os-variant=detect=on,require=off --name jiyin-rhel-930-2023072933_ppc64 --import --vcpus 4,sockets=1,cores=4 --arch=ppc64 --memory=1536 --disk /home/jiyin/VMs/RHEL-9.3.0-20230729.33/jiyin-rhel-930-2023072933_ppc64/jiyin-rhel-930-2023072933_ppc64-cloud-init.iso,device=cdrom --network=network=default,model=virtio --network=type=direct,source=enp2s0,source_mode=bridge,model=virtio --video=virtio --noautoconsole --graphics=vnc,listen=0.0.0.0 virsh console $vmname ''' Actual Results: qemu-system-ppc64 can't boot image from nvme driver; ''' $ qemu-system-ppc64 -device help|grep nvme name "nvme", bus PCI, desc "Non-Volatile Memory Express" name "nvme-ns", bus nvme-bus, desc "Virtual NVMe namespace" name "nvme-subsys", desc "Virtual NVMe subsystem" ''' ** if don't use nvme driver, it can always start success. Expected Results: qemu-system-ppc64 can boot image from nvme driver success More information: **same version, qemu-system-aarch64,qemu-system-x86_64 works well booting from nvme