make sure that the GPU supports it
(fix bug where sometimes, e.g. CUDA detection fails
but OpenCL succeeds, and we have a CUDA app).
svn path=/trunk/boinc/; revision=25630
- client: if acct mgr sends us an account with no authenticator,
show an error message instead of trying to attach
svn path=/trunk/boinc/; revision=25608
window messages. In effect, let Windows do the default thing. This removes
the hacks which kept the screensaver running with old versions of
Microsoft's keyboard/mouse driver software installed.
clientscr/
screensaver_win.cpp, .h
svn path=/trunk/boinc/; revision=25607
in send_work_setup(), so that they run before lost jobs are resent.
Otherwise lost jobs could get sent using an app version
that's prohibited by prefs
svn path=/trunk/boinc/; revision=25604
(whereas they didn't do this w/ older clients).
On Windows, the client uses TerminateProcess(h, 1) to kill processes;
the 1 is the exit code the process will appear to have.
So instead, add a "will_restart" bool arg to the various kill
functions, and if set use 0 (= STATUS_SUCCESS),
otherwise use EXIT_ABORTED_BY_CLIENT.
Note: in principle this shouldn't make any difference
for quitting tasks,
since handle_exited_app() checks for task state QUIT_PENDING
and ignores the exit code in that case.
The only place I can see where it would make any difference
is when we kill a process because it hasn't been handling
queued shared-memory messages for 180 seconds.
- client: add more info to the message about an exited app
- client: function return values (ERR_*) are different from
process exit codes (EXIT_*).
But in many places we were using return values as exit codes.
Fix these.
Also, break out the different types of limits a job can exceed
(time, disk, memory) into difference exit codes.
svn path=/trunk/boinc/; revision=25601
if you have
*pbuf = HeapAlloc(...)
then you need
if (*pbuf == NULL)
not
if (pbuf == NULL)
- various code cleanups from
- Makefile.am: don't include clientgui/res; nothing to make there
from Steffen Moeller
svn path=/trunk/boinc/; revision=25599
had a parse error, and it included project files.
While parsing the scheduler reply we'd add FILE_REFs to
PROJECT::project_files,
but wouldn't link them to FILE_INFOs since this is done
only if the reply parses correctly.
The next garbage_collect() would dereference these NULL pointers.
Solution: parse the FILE_REFS into SCHEDULER_REPLY::project_files.
Copy this to PROJECT::project_files only if the reply parses.
svn path=/trunk/boinc/; revision=25598
on each request.
- client: when showing how much work a scheduler request returned,
scale by availability (as is done to show the amount of the request)
- client in account manager request, <not_started_dur> and
<in_progress_dur> are in wall time, not run time
(i.e. scale them by availability)
Note: there's some confusion in the code between runtime and wall time,
where in general wall time = runtime / availability.
New convention: let's use "runtime" for the former,
and "duration" for the latter.
svn path=/trunk/boinc/; revision=25597
to add the boinc_master account to the boinc_admins group when
installing in the non-service install mode. boinc_master is only
created during service installs. This was causing a setup failure
on Windows 8. As far as I can tell it should have also been failing
on Win7 and WinVista.
win_build/installerv2/redist/Windows/src/boinccas/
boinccas.rc
CACreateBOINCGroups.cpp
win_build/installerv2/redist/Windows/Win32/
boinccas.dll
boinccas95.dll
win_build/installerv2/redist/Windows/x64/
boinccas.dll
boinccas95.dll
svn path=/trunk/boinc/; revision=25594
(or at least the last double).
This accommodates a particular application (LAMMPS)
that can only append to this file.
- CAS@home stuff
svn path=/trunk/boinc/; revision=25557