From 61ed72da89898c1db857d770ec8b07392f2dec20 Mon Sep 17 00:00:00 2001 From: David Anderson Date: Wed, 10 Jan 2007 20:29:44 +0000 Subject: [PATCH] *** empty log message *** svn path=/trunk/boinc/; revision=11826 --- checkin_notes | 10 ++++++++++ client/app_control.C | 2 ++ client/cs_scheduler.C | 5 +++-- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/checkin_notes b/checkin_notes index 9bba72477a..9b62330d6c 100755 --- a/checkin_notes +++ b/checkin_notes @@ -375,3 +375,13 @@ Charlie 9 Jan 2007 ViewResources.cp common/ wxPieCtrl.cpp,h + +David 10 Jan 2007 + - core client: fix problems when user aborts result + (mark it as CPU_SCHED_PREEMPTED so scheduler doesn't + try to preempt it; that confuses things) + - changed format of Deferring Comm messages + + client/ + app_control.C + cs_scheduler.C diff --git a/client/app_control.C b/client/app_control.C index cc04891901..03131ed68c 100644 --- a/client/app_control.C +++ b/client/app_control.C @@ -559,6 +559,8 @@ bool ACTIVE_TASK_SET::check_rsc_limits_exceeded() { int ACTIVE_TASK::abort_task(int exit_status, const char* msg) { if (task_state == PROCESS_EXECUTING || task_state == PROCESS_SUSPENDED) { task_state = PROCESS_ABORT_PENDING; + scheduler_state = CPU_SCHED_PREEMPTED; + // so scheduler doesn't try to preempt it abort_time = gstate.now; request_abort(); } else { diff --git a/client/cs_scheduler.C b/client/cs_scheduler.C index ca0907581d..ed00b59b68 100644 --- a/client/cs_scheduler.C +++ b/client/cs_scheduler.C @@ -99,9 +99,10 @@ void PROJECT::set_min_rpc_time(double future_time, const char* reason) { min_rpc_time = future_time; possibly_backed_off = true; msg_printf(this, MSG_INFO, - "Deferring communication %s, because %s\n", - timediff_format(min_rpc_time - gstate.now).c_str(), reason + "Deferring communication for %s", + timediff_format(min_rpc_time - gstate.now).c_str() ); + msg_printf(this, MSG_INFO, "Reason: %s\n", reason); } }