Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 1123390

Summary: virtio-scsi hotplug doesn't work on aarch64
Product: [Fedora] Fedora Reporter: Richard W.M. Jones <rjones>
Component: qemuAssignee: Fedora Virtualization Maintainers <virt-maint>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 23CC: amit.shah, berrange, cfergeau, crobinso, dwmw2, itamar, pbonzini, rjones, scottt.tw, virt-maint
Target Milestone: ---   
Target Release: ---   
Hardware: aarch64   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-11-25 02:24:39 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: 910269    
Attachments:
Description Flags
hotplug-log.txt none

Description Richard W.M. Jones 2014-07-25 13:39:44 UTC
Created attachment 920987 [details]
hotplug-log.txt

Description of problem:

Libguestfs has a comprehensive test suite which covers hotplugging.
It uses virtio-scsi as a the disk interface to test this.

Hot plug of virtio-scsi doesn't appear to work on aarch64.

-------------------
First question: On aarch64 we use virtio-mmio, not virtio-pci.
Is virtio-mmio even supposed to support hotplugging?  My internet
searches are inconclusive.  If virtio-mmio just doesn't support
hotplugging, then feel free to move the component to `libguestfs'
so I can disable the feature.  However if it's supposed to work then
don't do this, because I'd like to test it.
-------------------

When you try to hot add a disk, you get no error.  The disk
just doesn't show up after 30 seconds (which is the timeout in
this test).

However there are virtio-scsi errors that happen during boot
which might be related.  The full log of the test is attached.

Version-Release number of selected component (if applicable):

qemu from git @ ab6d3749c4915cd569
kernel 3.16.0-0.rc6.git1.1.efirtcfix1.fc22.aarch64
libvirt-daemon-1.2.6-1.fc21.aarch64

How reproducible:

100%

Steps to Reproduce:
1. make -C tests/hotplug check

Additional info:

See attached log

Comment 1 Cole Robinson 2014-07-25 17:03:53 UTC
My understanding is that this is not expected to work, virtio-mmio is not an actual bus and has no concept of hotplug. Maybe it should fail in a better way, but this is all better suited for the upstream list where the arm experts are actually watching.

Comment 2 Paolo Bonzini 2014-07-28 14:50:02 UTC
Hotplugging a scsi-disk onto an existing virtio-scsi device should work, though.

Comment 3 Jaroslav Reznik 2015-03-03 16:09:10 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 22 development cycle.
Changing version to '22'.

More information and reason for this action is here:
https://fedoraproject.org/wiki/Fedora_Program_Management/HouseKeeping/Fedora22

Comment 4 Cole Robinson 2015-11-25 02:24:39 UTC
I verified that f23 x86 host + f23 aarch64 guest works fine for hotplugging a virtio-scsi disk

Comment 5 Richard W.M. Jones 2015-11-25 09:54:54 UTC
Can confirm this *is* fixed ... which surprised me.  I thought
that virtio-mmio would never have working hotplug.  Thanks Cole.

Comment 6 Cole Robinson 2015-11-25 14:54:17 UTC
(In reply to Richard W.M. Jones from comment #5)
> Can confirm this *is* fixed ... which surprised me.  I thought
> that virtio-mmio would never have working hotplug.  Thanks Cole.

I'm guessing virtio-mmio isn't really a blocker here, since as paolo says in comment #2 this is just hotplugging a scsi-disk to a scsi controller, but the controller happens to be virtio