From f7bd62085ca6edcdb609d1e0d8e4c661f3831b78 Mon Sep 17 00:00:00 2001 From: Marius Tolzmann Date: Mon, 27 Jul 2015 23:05:57 +0200 Subject: [PATCH] mxqd: Fix mxq_group status inconsistency --- mxq_group.c | 6 ++++-- mxqd.c | 1 + 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/mxq_group.c b/mxq_group.c index c0faecb..11546b9 100644 --- a/mxq_group.c +++ b/mxq_group.c @@ -122,7 +122,8 @@ inline uint64_t mxq_group_jobs_active(struct mxq_group *g) active -= mxq_group_jobs_done(g); if (active != g->group_jobs_inq+g->group_jobs_running) - mx_log_warning("BUG: mxq_group: inconsistent 'active' (inq+run) value"); + mx_log_warning("BUG: mxq_group: inconsistent 'active'=%lu (inq=%lu+run=%lu)=%lu value", + active, g->group_jobs_inq, g->group_jobs_running, g->group_jobs_inq+g->group_jobs_running); return active; } @@ -135,7 +136,8 @@ inline uint64_t mxq_group_jobs_inq(struct mxq_group *g) inq -= g->group_jobs_running; if (inq != g->group_jobs_inq) - mx_log_warning("BUG: mxq_group: inconsistent inq value"); + mx_log_warning("BUG: mxq_group: inconsistent inq value (%lu != %lu)", + inq, g->group_jobs_inq); return inq; } diff --git a/mxqd.c b/mxqd.c index 7e24415..b5e0911 100644 --- a/mxqd.c +++ b/mxqd.c @@ -590,6 +590,7 @@ struct mxq_job_list *group_add_job(struct mxq_group_list *group, struct mxq_job server->threads_running += mxqgrp->job_threads; mxqgrp->group_jobs_running++; + mxqgrp->group_jobs_inq--; group->jobs_running++; user->jobs_running++;