QEMUHotplugRemoveFDSet: Prepare for proper FD unplug handling
QEMUHotplugRemoveFDSet: Prepare for proper FD unplug handling

For now we have only one code path ('vdpa' interface) which actually
cleans up the fdset after it's done, but there are more device types
using fdsets.

In order to unify the handling of fdsets the removal code will now be
able to remove fdsets based on a prefix of the 'opaque' field, which
we'll always prefix with a device alias or e.g. node name once fdsets
are also used for disk backing.

To keep compatibility with old QEMUs, retain the possibility for the
VDPA interface to use the path.

Signed-off-by: Peter Krempa <2cf5c04c61aa466e4a47bfedc747d17279c72ffc@redhat.com>
Reviewed-by: Ján Tomko <4cab11cfb98d3c937327354a78eb07dbb6ee2bc6@redhat.com>

olafhering/libvirt,crobinso/libvirt,libvirt/libvirt,crobinso/libvirt,jfehlig/libvirt,jfehlig/libvirt,zippy2/libvirt,crobinso/libvirt,libvirt/libvirt,zippy2/libvirt,jfehlig/libvirt,jfehlig/libvirt,olafhering/libvirt,olafhering/libvirt,crobinso/libvirt,libvirt/libvirt,zippy2/libvirt,zippy2/libvirt,libvirt/libvirt,olafhering/libvirt