The error code for virKillProcess is returned in the errno variable
not the return value. THis mistake caused the logs to be filled with
errors when shutting down QEMU processes
* src/qemu/qemu_process.c: Fix process kill check.
void qemuProcessKill(virDomainObjPtr vm)
{
int i;
- int rc;
VIR_DEBUG("vm=%s pid=%d", vm->def->name, vm->pid);
if (!virDomainObjIsActive(vm)) {
else
signum = 0; /* Just check for existence */
- rc = virKillProcess(vm->pid, signum);
- if (rc < 0) {
- if (rc != -ESRCH) {
+ if (virKillProcess(vm->pid, signum) < 0) {
+ if (errno != ESRCH) {
char ebuf[1024];
VIR_WARN("Failed to kill process %d %s",
vm->pid, virStrerror(errno, ebuf, sizeof ebuf));