Hello.
We finally found the cause of this problem.
When we use "virsh reboot domain", it is actually two calls
qemuMonitorSystemPowerdown() and qemuProcessFakeReboot().
Inside the first call domain stateReason is set to
VIR_DOMAIN_SHUTDOWN_UNKNOWN and then virDomainSaveStatus() is called.
Inside the second call domain stateReason is set to
VIR_DOMAIN_RESUMED_UNPAUSED but domain configuration is not saved into
XML.
After restart of libvirtd domain stateReason SHUTDOWN_UNKNOWN is
restored and domain is automatically shutdown.
In the attached files there are shell log, qemu log, libvirtd log and
proposed patch.
wbr,
Sergey.