qemu: Auto generate a controller when attach hostdev and chr device
qemu: Auto generate a controller when attach hostdev and chr device

https://bugzilla.redhat.com/show_bug.cgi?id=1174154

When we use attach-device add a hostdev or chr device which have a
iscsi address or others (just like guest agent, subsys iscsi disk...),
we will find there is no basic controller for our new attached device.
Somtimes this will make guest cannot start after we add them (although
they can start at the second time).

Signed-off-by: Luyao Huang <23d9981432efa88691fd2a71f5525bc2174f7664@redhat.com>

datto/libvirt,shugaoye/libvirt,nertpinx/libvirt,VenkatDatta/libvirt,crobinso/libvirt,jfehlig/libvirt,olafhering/libvirt,jardasgit/libvirt,jardasgit/libvirt,datto/libvirt,rlaager/libvirt,taget/libvirt,nertpinx/libvirt,libvirt/libvirt,zippy2/libvirt,shugaoye/libvirt,VenkatDatta/libvirt,libvirt/libvirt,andreabolognani/libvirt,agx/libvirt,andreabolognani/libvirt,jardasgit/libvirt,elmarco/libvirt,nertpinx/libvirt,andreabolognani/libvirt,elmarco/libvirt,taget/libvirt,zippy2/libvirt,taget/libvirt,datto/libvirt,jfehlig/libvirt,fabianfreyer/libvirt,shugaoye/libvirt,fabianfreyer/libvirt,rlaager/libvirt,nertpinx/libvirt,olafhering/libvirt,agx/libvirt,andreabolognani/libvirt,shugaoye/libvirt,elmarco/libvirt,datto/libvirt,VenkatDatta/libvirt,elmarco/libvirt,agx/libvirt,agx/libvirt,fabianfreyer/libvirt,crobinso/libvirt,shugaoye/libvirt,zippy2/libvirt,eskultety/libvirt,crobinso/libvirt,fabianfreyer/libvirt,elmarco/libvirt,VenkatDatta/libvirt,zippy2/libvirt,rlaager/libvirt,agx/libvirt,datto/libvirt,nertpinx/libvirt,VenkatDatta/libvirt,jardasgit/libvirt,eskultety/libvirt,libvirt/libvirt,crobinso/libvirt,taget/libvirt,olafhering/libvirt,jfehlig/libvirt,rlaager/libvirt,eskultety/libvirt,jardasgit/libvirt,olafhering/libvirt,fabianfreyer/libvirt,eskultety/libvirt,rlaager/libvirt,eskultety/libvirt,andreabolognani/libvirt,jfehlig/libvirt,libvirt/libvirt,taget/libvirt