- client: if we suspend apps because non-BOINC CPU is is too high,

leave them in memory.
    Otherwise (if the CPU use is caused by launching an app,
    say by security software)
    we would get into a loop.

svn path=/trunk/boinc/; revision=22420
This commit is contained in:
David Anderson 2010-09-28 21:48:31 +00:00
parent 86e9c69cdb
commit e34c09c000
2 changed files with 30 additions and 15 deletions

View File

@ -6847,19 +6847,6 @@ David 27 Sept 2010
cs_statefile.cpp
scheduler_op.cpp
time_stats.cpp
<<<<<<< .mine
David 28 Sept 2010
- validator: if credit calculation returns an error,
wait 6 hours before retrying
sched/
validator.cpp
client/
sim.cpp,h
client_state.h
cs_statefile.cpp
=======
Rom 28 Sept 2010
- MGR: Make the new BOINC skin the default skin.
@ -6883,4 +6870,25 @@ Rom 28 Sept 2010
/
configure.ac
version.h
>>>>>>> .r22417
David 28 Sept 2010
- validator: if credit calculation returns an error,
wait 6 hours before retrying
sched/
validator.cpp
client/
sim.cpp,h
client_state.h
cs_statefile.cpp
David 28 Sept 2010
- client: if we suspend apps because non-BOINC CPU is is too high,
leave them in memory.
Otherwise (if the CPU use is caused by launching an app,
say by security software)
we would get into a loop.
client/
app_control.cpp

View File

@ -898,8 +898,15 @@ void ACTIVE_TASK_SET::suspend_all(int reason) {
atp->preempt(REMOVE_NEVER);
break;
case SUSPEND_REASON_CPU_USAGE:
// If we're suspending because of non-BOINC CPU load,
// don't remove from memory.
// Some systems do a security check when apps are launched,
// which uses a lot of CPU.
// Avoid going into a preemption loop.
//
if (atp->result->project->non_cpu_intensive) break;
// fall through
atp->preempt(REMOVE_NEVER);
break;
default:
atp->preempt(REMOVE_MAYBE_USER);
}