On Fri, Jul 23, 2021 at 10:27:47 +0200, Michal Prívozník wrote: > On 7/23/21 5:00 AM, Fangge Jin wrote: > > > > > > On Wed, Jul 21, 2021 at 10:54 PM Michal Prívozník <mprivozn@xxxxxxxxxx > > <mailto:mprivozn@xxxxxxxxxx>> wrote: > > > > > > > The bug quoted shows a few examples where we fail to save status. > > > > > > I'm very surprised we don't save status when hotplugging a NIC or a > > > disk, as the BZ suggests. > > > > I'm not convinced that the steps there are 100% correct. We do call > > virDomainObjSave() after live attach: > > > > https://gitlab.com/libvirt/libvirt/-/blob/master/src/qemu/qemu_driver.c#L7834 > > <https://gitlab.com/libvirt/libvirt/-/blob/master/src/qemu/qemu_driver.c#L7834> > > > > The two steps for hot-unplug in the BZ actually failed. > > (sorry I didn't mention the result in the steps) > In that case, we have another problem - the domain is marked as > "tainted: use of host cdrom passthrough" even though the hotplug failed > and qemu has never saw host cdrom. And the same goes for "tainted: > network configuration using opaque shell scripts" - the taint happens > before any hotplug is even attempted (and thus possibly even when the > script did not even run). IMO we should taint the VM even on a failed attempt. Tainst are not just because of qemu but also because also libvirt can behave unexpectedly after such operation and we can't really be sure once we start the hotplug process.