On Wed, Jun 22, 2016 at 17:41:12 +0300, Nikolay Shirokovskiy wrote: > > > On 22.06.2016 17:18, Jiri Denemark wrote: > > On Wed, Jun 22, 2016 at 16:17:50 +0300, Nikolay Shirokovskiy wrote: > >> One can not issue monitor commands manually during async calls thru > >> designated API while this could be useful for testing/debugging purposes. > >> qemuDomainQemuMonitorCommand uses job of type QEMU_JOB_MODIFY and any async > >> call disable parallel execution of this type of job. The only state that is > >> changed is taint variable. AFAIU the only place we can mess is resetting > >> taint flag in qemuProcessStop routine under some async job. But this can not > >> happen thanx to both virDomainObjIsActive check in qemuDomainQemuMonitorCommand > >> and resetting active status in qemuProcessStop before taint flag. > >> > >> Change job type to QEMU_JOB_QUERY and thus make the API call available for > >> most of async jobs. > > > > The reason for acquiring MODIFY job is that qemuDomainQemuMonitorCommand > > can be used to call any monitor command even those that modify state. > > For example, you could unplug a device during an async job. And since we > > don't want anything to mess up with a domain while async job is running, > > acquiring just QUERY job would be wrong. > > Well this API call is tainted thus user is aware he is on his own here. > AFAIU tainted means domain *can* be messed up thru this call. Hmm, thinking about it more I think you are right. Users can already do a lot of harm when an async job is not running so preventing them from doing that in a specific case of async jobs is not necessary. So self-NACK of my previous NACK and ACK to your patch :-) Jirka -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list