Bug 1972091

Summary: It's not possible to start installation from a virtual USB device on aarch64
Product: Red Hat Enterprise Linux 8 Reporter: Jan Stodola <jstodola>
Component: qemu-kvmAssignee: Virtualization Maintenance <virt-maint>
qemu-kvm sub component: Storage QA Contact: Zhenyu Zhang <zhenyzha>
Status: CLOSED WONTFIX Docs Contact:
Severity: medium    
Priority: medium CC: drjones, eric.auger, gshan, lcapitulino, qzhang, virt-maint, yihyu, zhenyzha
Version: 8.5Keywords: Triaged
Target Milestone: betaFlags: pm-rhel: mirror+
Target Release: ---   
Hardware: aarch64   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 1974579 (view as bug list) Environment:
Last Closed: 2021-06-23 18:41:17 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: 1885765, 1974579, 1989601    

Description Jan Stodola 2021-06-15 08:45:32 UTC
Description of problem:
It's not possible to start installation from a virtual USB device on aarch64:

# virt-install --os-variant rhel8-unknown --arch aarch64 --disk /var/lib/libvirt/images/boot.iso,bus=usb --boot uefi --name test --memory 2048 --disk size=10 --graphics none

Starting install...
Allocating 'test.qcow2'                                                                   |  10 GB  00:00:00     
ERROR    unsupported configuration: This QEMU doesn't support '-device usb-storage'



Version-Release number of selected component (if applicable):
qemu-kvm-4.2.0-51.module+el8.5.0+11141+9dff516f.aarch64
virt-install-2.2.1-4.el8.noarch

How reproducible:
Always on aarch64

Steps to Reproduce:
1. virt-install --os-variant rhel8-unknown --arch aarch64 --disk /var/lib/libvirt/images/boot.iso,bus=usb --boot uefi --name test --memory 2048 --disk size=10 --graphics none

Actual results:
ERROR    unsupported configuration: This QEMU doesn't support '-device usb-storage'

Expected results:
It's possible to start installation from a USB device

Comment 1 Andrew Jones 2021-06-15 09:29:41 UTC
We don't support running AArch64 VMs without the AV version of qemu-kvm. If this use case is expected to work because it's commonly used by other architectures and/or is documented in the Virt user's guide, then please test again with the AV qemu-kvm to see if works there. If not, please move this BZ to that product.

That said, is this a regression? I.e. did this used to work with the non-AV version of qemu-kvm until recently?

Comment 2 Qunfang Zhang 2021-06-22 06:47:47 UTC
Zhenyu re-tested RHEL-AV and RHEL 9 Beta, the issue is reproduced too. Filed Bug 1974579 to track RHEL-AV issue.

Comment 3 Luiz Capitulino 2021-06-23 18:41:17 UTC
(In reply to Qunfang Zhang from comment #2)
> Zhenyu re-tested RHEL-AV and RHEL 9 Beta, the issue is reproduced too. Filed
> Bug 1974579 to track RHEL-AV issue.

Thanks Qunfang and Zhenyu.

Jan, I'm closing this one as WONTFIX since as Drew explained in comment 1, we only fix bugs for the Advanced Virtualization stream.

Please, let's move this discussion to bug 1974579 (since AV is also affected).

Comment 4 Zhenyu Zhang 2021-06-24 01:00:14 UTC
(In reply to Andrew Jones from comment #1)
> We don't support running AArch64 VMs without the AV version of qemu-kvm. If
> this use case is expected to work because it's commonly used by other
> architectures and/or is documented in the Virt user's guide, then please
> test again with the AV qemu-kvm to see if works there. If not, please move
> this BZ to that product.
> 
> That said, is this a regression? I.e. did this used to work with the non-AV
> version of qemu-kvm until recently?

Hello Drew,

I tested the qemu-kvm-4.2.0-48.module+el8.4.0 and qemu-kvm-4.2.0-29.module+el8.2.1 versions, 
They also don't support "usb-storage".
So I think this's not a regression.
And I tested on x86,PowerPC, they work fine.

on aarch64:
qemu-kvm-4.2.0-48.module+el8.4.0+10368+630e803b
/usr/libexec/qemu-kvm -cpu host -device help | grep usb
name "usb-host", bus usb-bus
name "usb-hub", bus usb-bus
name "usb-kbd", bus usb-bus
name "usb-mouse", bus usb-bus
name "usb-tablet", bus usb-bus

qemu-kvm-4.2.0-29.module+el8.2.1+11280+70ae3d73.8
/usr/libexec/qemu-kvm -cpu host -device help | grep usb
name "usb-host", bus usb-bus
name "usb-hub", bus usb-bus
name "usb-kbd", bus usb-bus
name "usb-mouse", bus usb-bus
name "usb-tablet", bus usb-bus

on x86_64:
[root@dell-per730-47 ~]# /usr/libexec/qemu-kvm -version
QEMU emulator version 5.2.0 (qemu-kvm-5.2.0-16.module+el8.4.0+11536+725e25d9.2)

[root@dell-per730-47 ~]# /usr/libexec/qemu-kvm -cpu host -device help | grep usb
name "usb-host", bus usb-bus
name "usb-hub", bus usb-bus
name "ich9-usb-ehci1", bus PCI
name "ich9-usb-ehci2", bus PCI
name "ich9-usb-uhci1", bus PCI
name "ich9-usb-uhci2", bus PCI
name "ich9-usb-uhci3", bus PCI
name "ich9-usb-uhci4", bus PCI
name "ich9-usb-uhci5", bus PCI
name "ich9-usb-uhci6", bus PCI
name "nec-usb-xhci", bus PCI
name "piix3-usb-uhci", bus PCI
name "piix4-usb-uhci", bus PCI
name "usb-ehci", bus PCI
name "vt82c686b-usb-uhci", bus PCI
name "usb-bot", bus usb-bus
name "usb-storage", bus usb-bus
name "usb-ccid", bus usb-bus, desc "CCID Rev 1.1 smartcard reader"
name "usb-kbd", bus usb-bus
name "usb-mouse", bus usb-bus
name "usb-tablet", bus usb-bus
name "usb-redir", bus usb-bus

on PowerPC:
[root@ibm-p8-rhevm-12 ~]# /usr/libexec/qemu-kvm -version
QEMU emulator version 5.2.0 (qemu-kvm-5.2.0-16.module+el8.4.0+11536+725e25d9.2)

# /usr/libexec/qemu-kvm -cpu host -device help | grep usb
name "usb-host", bus usb-bus
name "usb-hub", bus usb-bus
name "nec-usb-xhci", bus PCI
name "usb-bot", bus usb-bus
name "usb-storage", bus usb-bus
name "usb-ccid", bus usb-bus, desc "CCID Rev 1.1 smartcard reader"
name "usb-kbd", bus usb-bus
name "usb-mouse", bus usb-bus
name "usb-tablet", bus usb-bus

Comment 5 Andrew Jones 2021-06-24 07:40:41 UTC
(In reply to Zhenyu Zhang from comment #4)
> I tested the qemu-kvm-4.2.0-48.module+el8.4.0 and
> qemu-kvm-4.2.0-29.module+el8.2.1 versions, 
> They also don't support "usb-storage".
> So I think this's not a regression.
> And I tested on x86,PowerPC, they work fine.
> 
...
> on x86_64:
> [root@dell-per730-47 ~]# /usr/libexec/qemu-kvm -version
> QEMU emulator version 5.2.0
> (qemu-kvm-5.2.0-16.module+el8.4.0+11536+725e25d9.2)

I'd expect to compare against the same product for the other architectures, i.e. the output of -version here should be qemu-kvm-4.2.0-48.module+el8.4.0

...
> 
> on PowerPC:
> [root@ibm-p8-rhevm-12 ~]# /usr/libexec/qemu-kvm -version
> QEMU emulator version 5.2.0
> (qemu-kvm-5.2.0-16.module+el8.4.0+11536+725e25d9.2)
> 

Same comment as for x86.

Comment 6 Zhenyu Zhang 2021-06-24 07:54:03 UTC
(In reply to Andrew Jones from comment #5)
> (In reply to Zhenyu Zhang from comment #4)
> > I tested the qemu-kvm-4.2.0-48.module+el8.4.0 and
> > qemu-kvm-4.2.0-29.module+el8.2.1 versions, 
> > They also don't support "usb-storage".
> > So I think this's not a regression.
> > And I tested on x86,PowerPC, they work fine.
> > 
> ...
> > on x86_64:
> > [root@dell-per730-47 ~]# /usr/libexec/qemu-kvm -version
> > QEMU emulator version 5.2.0
> > (qemu-kvm-5.2.0-16.module+el8.4.0+11536+725e25d9.2)
> 
> I'd expect to compare against the same product for the other architectures,
> i.e. the output of -version here should be qemu-kvm-4.2.0-48.module+el8.4.0

OK, Testing, update results later.

Comment 7 Zhenyu Zhang 2021-06-24 08:11:32 UTC
(In reply to Andrew Jones from comment #5)
> (In reply to Zhenyu Zhang from comment #4)
> I'd expect to compare against the same product for the other architectures,
> i.e. the output of -version here should be qemu-kvm-4.2.0-48.module+el8.4.0


Same result:

on x86_64:
[root@hp-dl388g8-16 home]# /usr/libexec/qemu-kvm -version
QEMU emulator version 4.2.0 (qemu-kvm-4.2.0-48.module+el8.4.0+11279+b1e899a7.1)
Copyright (c) 2003-2019 Fabrice Bellard and the QEMU Project developers

[root@hp-dl388g8-16 home]# /usr/libexec/qemu-kvm -cpu host -device help | grep usb
name "usb-host", bus usb-bus
name "usb-hub", bus usb-bus
name "ich9-usb-ehci1", bus PCI
name "ich9-usb-ehci2", bus PCI
name "ich9-usb-uhci1", bus PCI
name "ich9-usb-uhci2", bus PCI
name "ich9-usb-uhci3", bus PCI
name "ich9-usb-uhci4", bus PCI
name "ich9-usb-uhci5", bus PCI
name "ich9-usb-uhci6", bus PCI
name "nec-usb-xhci", bus PCI
name "piix3-usb-uhci", bus PCI
name "piix4-usb-uhci", bus PCI
name "usb-ehci", bus PCI
name "vt82c686b-usb-uhci", bus PCI
name "usb-bot", bus usb-bus
name "usb-storage", bus usb-bus
name "usb-ccid", bus usb-bus, desc "CCID Rev 1.1 smartcard reader"
name "usb-kbd", bus usb-bus
name "usb-mouse", bus usb-bus
name "usb-tablet", bus usb-bus
name "usb-redir", bus usb-bus

on PowerPC:
[root@ibm-p9b-11 ~]# /usr/libexec/qemu-kvm -version
QEMU emulator version 4.2.0 (qemu-kvm-4.2.0-48.module+el8.4.0+11279+b1e899a7.1)
Copyright (c) 2003-2019 Fabrice Bellard and the QEMU Project developers

[root@ibm-p9b-11 ~]# /usr/libexec/qemu-kvm -cpu host -device help | grep usb
name "usb-host", bus usb-bus
name "usb-hub", bus usb-bus
name "nec-usb-xhci", bus PCI
name "usb-bot", bus usb-bus
name "usb-storage", bus usb-bus
name "usb-ccid", bus usb-bus, desc "CCID Rev 1.1 smartcard reader"
name "usb-kbd", bus usb-bus
name "usb-mouse", bus usb-bus
name "usb-tablet", bus usb-bus

Comment 8 Jan Stodola 2021-06-24 19:54:02 UTC
Clearing needinfo, thanks for creating bug 1974579.