Alexander Graf <ag...@suse.de> writes: > The monitor command for hotplugging is in i386 specific code. This is just > plain wrong, as S390 just learned how to do hotplugging too and needs to > get drives for that. > > So let's add a generic copy to generic code that handles drive_add in a > way that doesn't have pci dependencies. > > I'm not fully happy with the patch as is. IMHO there should only be a > single target agnostic drive_hot_add function available. How we could > potentially fit IF_SCSI in there I don't know though. > > Signed-off-by: Alexander Graf <ag...@suse.de>
Yes, we need a target-agnostic command to add host block devices. All we have now is x86's drive_add, which isn't target-agnostic, because its normal function is to add both host and guest part, and the latter is entangled with PCI. Your patch creates a copy of x86's drive_add with the guest bits stripped from the code, so it's usable for non-PCI targets. Guest bits remain in the syntax (first argument, useless baggage with your command). Ugly. I'm working on a clean solution for this problem. If you must have a solution right away, and ugly is fine, then your patch should do for now. In my opinion, pci_add, pci_del and drive_add all need to go. They're insufficiently general, and they fail to separate host and guest parts.