From 97f93fd0a13d9ed8f5af59170062afc9bebe195a Mon Sep 17 00:00:00 2001 From: Marc Fiuczynski Date: Tue, 19 Apr 2005 12:48:30 +0000 Subject: [PATCH] don't decrement below zero --- kernel/ckrm/ckrm_numtasks.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/kernel/ckrm/ckrm_numtasks.c b/kernel/ckrm/ckrm_numtasks.c index 7b02a6ca2..c0583055d 100644 --- a/kernel/ckrm/ckrm_numtasks.c +++ b/kernel/ckrm/ckrm_numtasks.c @@ -165,7 +165,12 @@ static void numtasks_put_ref_local(struct ckrm_core_class *core) res = ckrm_get_res_class(core, resid, struct ckrm_numtasks); if (res == NULL) return; + + if (atomic_read(&res->cnt_cur_alloc)==0) + return; + atomic_dec(&res->cnt_cur_alloc); + if (atomic_read(&res->cnt_borrowed) > 0) { atomic_dec(&res->cnt_borrowed); numtasks_put_ref_local(res->parent); -- 2.45.2