Commit Graph

6815 Commits

Author SHA1 Message Date
Charlie Fenton 5f6aaf5d08 Fix a compiler error and a compiler warning
svn path=/trunk/boinc/; revision=17394
2009-02-26 02:31:33 +00:00
David Anderson 019ab4cdfc - API: file descriptor leak in obscure case.
fixes #103


svn path=/trunk/boinc/; revision=17391
2009-02-26 01:11:37 +00:00
David Anderson 2e2eacc2f5 - client: if you put <host_venue> in global_prefs_override.xml,
it should select the venue from the network prefs.
    Now it does.


svn path=/trunk/boinc/; revision=17389
2009-02-26 00:52:50 +00:00
Eric J. Korpela 8f3abcc835 - Added checks for net/*.h, arpa/*.h, netinet/*.h and code to figure out
which of those files to include
    - Modified MAC address check to work on some non-Linux unixes.
      (mac_address.cpp)
    - Added suggested change to "already attached to project" checking.
      (ProjectInfoPage.cpp)
    - changed includes of standard c header files to their c++ equivalents
      (i.e. replaced <stdio.h> with <cstdio>) for namespace protection.
    - replaced "using namespace std;" with more explicit "using std::function" in
      several files.
    - Fixed bug in checking whether the os is OS/2 and added conditional OS_OS2
      to the build environment. (boinc_platform.m4,configure.ac)
    - Changed build environment to not use -nostandardlibs unless we are using
      G++ and static linkage is specified. (configure.ac)
    - Added makefiles and package building files for solaris CSW package manager.
    - Fixed bug with attempting to find login name using logname. (configure.ac)
    - Added ifdef HAVE_* protection around some include files commonly found in
      sys.
    - Added support for unified binary for x86_64/i686-pc-solaris.
      (cs_platforms.cpp)
    - generate_host_cpid() now uses MAC address on non-linux unix.
      (hostinfo_network.cpp)
    - Macro BOINC_SET_COMPILE_FLAGS now doesn't check gcc only flags on non-gcc
      compilers. (boinc_set_compile_flags.m4)
    - Library compiles no longer depend upon the library extension or require
      the library to be prefixed with lib.
    - More fixes for fcgi builds.
    - Added declaration of "struct ether_addr" and ether_ntoa().  Have not yet
      implemented ether_ntoa() for machines that don't have it, or where it is
      buggy.  (unix_util.h)
    - Added FCGI::perror() which calls FCGI_perror(). (boinc_fcgi.{h,cpp})
    - Fixed library Makefiles so that all required headers get installed.


svn path=/trunk/boinc/; revision=17388
2009-02-26 00:23:23 +00:00
Rom Walton a44e2e9c24 - MGR: Remove the /s parameter from the argument list on Linux
until we know it is supported.  Fixes #615
        
    clientgui/
        BOINCGUIApp.cpp

svn path=/trunk/boinc/; revision=17385
2009-02-25 20:51:56 +00:00
David Anderson de2bacab35 - boinccmd: fix bug in --set_proxy_settings command
(it wasn't setting the "use_XXX" flags).  Fixes #776
- client: you can now include a <proxy_info> element
    in your cc_config.xml options.

TODO: the whole proxy info thing needs an overhaul:
- no separate "use_XXX" flags;
    non-empty http_server_name implies using HTTP proxy, etc.
- merge PROXY_INFO and GR_PROXY_INFO classes
- use XML_PARSER for parsing
- no PROXY_INFO element in HTTP_OP; just use gstate.proxy_info

svn path=/trunk/boinc/; revision=17379
2009-02-25 19:18:41 +00:00
David Anderson 3a8078bd5f - client: fix bugs in "abort_jobs_on_exit" feature:
- clear project backoffs when start abort sequence
    - don't back off projects if in abort sequence

svn path=/trunk/boinc/; revision=17375
2009-02-25 17:41:22 +00:00
Rom Walton e778824e81 - WINSCR: Remove unneeded header files
- SCR: Shuffle headers around so that it'll build on both Windows and
        Mac without having to put in duplicate entries.
        
    clientscr/
        screensaver.cpp

svn path=/trunk/boinc/; revision=17370
2009-02-25 14:56:48 +00:00
Rom Walton 39ec4ad5f2 Quick Updates
svn path=/trunk/boinc/; revision=17363
2009-02-25 00:26:25 +00:00
Rom Walton 956b06f624 - WINSCR: Remove the progress indication code from the coordinator.
It is not handled by the default screensaver app.
    - WINSCR: Clean-up some of the thread cleanup logic.
    
    clientscr/
        screensaver_win.cpp

svn path=/trunk/boinc/; revision=17349
2009-02-24 20:00:02 +00:00
Charlie Fenton 6ff6bda42d screensaver: Fix a bug I introduced during code consolidation
svn path=/trunk/boinc/; revision=17346
2009-02-24 12:47:54 +00:00
David Anderson 3709c1e9f4 - scheduler: include driver version in the CUDA description string
storing in the database;
- web: display the above

svn path=/trunk/boinc/; revision=17341
2009-02-24 00:06:45 +00:00
Charlie Fenton fd1e7b33ca screensaver: Code consolidation, fix bug terminating default graphics app on screensaver exit
svn path=/trunk/boinc/; revision=17339
2009-02-23 23:06:03 +00:00
David Anderson 125c90d1da - client: work-fetch bug fix: if we're fetching work for a starved
project, it most have no runnable jobs for ANY resource.
- client: work-fetch bug fix: when setting requests in the
    shortfall case, don't request anything if project is backed off
    or overworked for the resource.

svn path=/trunk/boinc/; revision=17338
2009-02-23 21:34:13 +00:00
David Anderson f257101d36 - client: fix work-fetch bug that caused infinite fetch;
cleanup/reorganization of work fetch logic

svn path=/trunk/boinc/; revision=17337
2009-02-23 20:35:52 +00:00
Rom Walton b402864705 - WINSCR: Fix the BOINC text displayed is the screensaver control
panel applet
    - WINSCR: Get rid of the 'Up to 5 second wait' for the data thread
        to terminate.  Force terminate the thread and clean up the
        graphics app in a clean-up routine.  Forcing the user to wait
        when they return to the system isn't a good idea.
    - WINSCR: Fix screensaver issue where the screensaver locks up
        when the graphics application deadlocks for one reason or
        another.
        
        Create two new threads:
          1. Monitor system for keyboard and mouse events.
          2. Shuffle window z-order positions if needed.
          
        The keyboard/mouse event monitor is isolated from either
          the core client getting stuck in a loop and not returning
          the results of an RPC or the window shuffling code which
          can get stuck if the graphics application dead locks.
          
        The window shuffle code is isolated due to the
          BroadcastSystemMessage() API using something akin to
          SendMessage() which waits for a return value from the
          target windows winproc.  If a graphics application
          deadlocks for one reason or another it'll cause
          the thread to stall.  This isn't terminal and so we
          just wait for the next time the data thread chooses
          a new application and terminates the old one which
          will cause the thread to resume.
          
        This should resolve all outstanding issues with the
          screensaver not exiting when the mouse or keyboard
          is used.
          
    clientscr/
        boinc_ss.rc
        screensaver.cpp
        screensaver_win.cpp, .h

svn path=/trunk/boinc/; revision=17336
2009-02-23 06:09:16 +00:00
David Anderson 2574afb41c - client: more instances of showing project with message. Fixes #848
svn path=/trunk/boinc/; revision=17335
2009-02-23 04:54:04 +00:00
David Anderson 26f4f33b22 - client: print message if downloaded file has wrong size
- client: associate file xfer messages with a project; fixes #848

svn path=/trunk/boinc/; revision=17334
2009-02-22 20:54:33 +00:00
David Anderson 7001c6f7c5 - client: tweak the LTD calculation so that the largest debt
always tends towards zero

svn path=/trunk/boinc/; revision=17333
2009-02-22 15:40:44 +00:00
David Anderson 16ca7cd359 svn path=/trunk/boinc/; revision=17332 2009-02-22 04:05:34 +00:00
Charlie Fenton 73dc776567 pdate various source filed to GPL 3
svn path=/trunk/boinc/; revision=17330
2009-02-21 02:42:50 +00:00
David Anderson 7c77fa14f3 - client: fix bug that can cause no GPU jobs to be scheduled
even when a GPU is free

svn path=/trunk/boinc/; revision=17329
2009-02-21 01:09:29 +00:00
David Anderson 3b31a9d803 - client: remove the "debt repair" mechanism added earlier today.
There are situations where multiple projects can legitimately
    have large negative LTD on a uniprocessor.
    Instead...
- client: add <zero_debts> option to cc_config.xml

svn path=/trunk/boinc/; revision=17328
2009-02-20 22:16:03 +00:00
David Anderson 6241fff21f - client: new work-fetch policy:
1) if an instance is idle, get work from highest-debt project,
        even if it's overworked.
    2) if resource has a shortfall, get work from highest-debt
        non-overworked project
    3) if there's a fetchable non-overworked project with no runnable jobs,
        get from from the highest-debt one.
    (each step is done first for GPU, then CPU)
    Clause 3) is new.
    It will cause the client to get jobs for as many projects as possible,
    even if there is no shortfall.
    This is necessary to make the notion of "overworked" meaningful
    (otherwise, any project with long jobs can become overworked).
    It also maintains as much variety as possible (like pre-6.6 clients).

    Also (small bug fix) if a project is overworked for resource R,
    request work for R only in case 1).


svn path=/trunk/boinc/; revision=17327
2009-02-20 21:44:39 +00:00
David Anderson f7f2f85b79 - client: if a project is at max backoff for a resource,
stop accumulating debt if it's at or around zero.
        This prevents other projects from being driven unboundedly negative.
    - client: if the number of overworked projects exceeds the number
        of device instances, clear debts; this indicates that an earlier
        client was buggy and produced bad debt values.

svn path=/trunk/boinc/; revision=17325
2009-02-20 18:37:27 +00:00
Charlie Fenton f0d4cff76b lib: Fix build break on Windows
svn path=/trunk/boinc/; revision=17324
2009-02-20 12:31:24 +00:00
Charlie Fenton 1956446863 update checkin_notes
svn path=/trunk/boinc/; revision=17323
2009-02-20 11:50:48 +00:00
Charlie Fenton b4c78c27b4 screensaver: Implement new screensaver coordinator logic as requested by Rom.
svn path=/trunk/boinc/; revision=17322
2009-02-20 11:49:49 +00:00
Charlie Fenton 72e5c0fc0d screensaver: Implement --test and --retry_connect command-line arguments as requested by Rom
svn path=/trunk/boinc/; revision=17321
2009-02-20 02:33:11 +00:00
David Anderson 8973e39479 - client: don't complain that master URLs differ if it's only in case
svn path=/trunk/boinc/; revision=17310
2009-02-19 21:34:48 +00:00
David Anderson 72c57735eb - client: add more info to <work_fetch_debug> messages
svn path=/trunk/boinc/; revision=17309
2009-02-19 21:32:54 +00:00
David Anderson 99a15ab052 - web: in lists of tasks, give the option of showing names instead of IDs
svn path=/trunk/boinc/; revision=17308
2009-02-19 18:39:03 +00:00
David Anderson 65679139c5 - scheduler: make host.p_features available to app_plan()
svn path=/trunk/boinc/; revision=17307
2009-02-19 15:43:37 +00:00
David Anderson d848e54518 - web tweaks
svn path=/trunk/boinc/; revision=17306
2009-02-19 05:03:02 +00:00
David Anderson 3e98909ab6 - client: adjust debts at least every minute.
This fixes a bug that can cause debts to NEVER get updated.
- client: added "abort_jobs_on_exit" feature
    (available by --abort_jobs_on_exit cmdline
    or <abort_jobs_on_exit> in cc_config.xml).
    If set, when the client is exited by user request
    (this includes signals on Unix)
    it marks all pending jobs as aborted,
    and does a scheduler RPC to all projects with jobs.
    When these are completed the client exits.
    This is useful when BOINC is being used on grids
    where it is wiped clean after each run.

svn path=/trunk/boinc/; revision=17300
2009-02-18 19:47:02 +00:00
David Anderson b4bac32d75 - client: if "no more work" checked, don't request more work (duh!)
svn path=/trunk/boinc/; revision=17290
2009-02-18 16:21:30 +00:00
David Anderson 6a75b78de4 - client: don't ignore jobs with fraction_done=1 (but still running)
in RR simulation; we may need to mark them as deadline miss.
- web: replace & with &amp; various places


svn path=/trunk/boinc/; revision=17278
2009-02-17 17:39:57 +00:00
David Anderson 15e9a87315 - client: add a debug flag <dcf_debug> for seeing changes in DCF
- scheduler: add a limit on NVIDIA driver version for CUDA apps
    (default 17500)

svn path=/trunk/boinc/; revision=17277
2009-02-17 03:16:25 +00:00
Charlie Fenton c8ad5b1def client: fix compile break on Mac
svn path=/trunk/boinc/; revision=17276
2009-02-17 01:51:56 +00:00
David Anderson 4d1544e579 - client: detect NVIDIA driver version number, show it on startup,
and include it with CUDA coprocessor descriptor in request msgs

svn path=/trunk/boinc/; revision=17275
2009-02-16 23:03:03 +00:00
Rom Walton f006c3b1b4 - WINBUILD: Remove ReleaseSigned build depends.
- WINBUILD: Add NVAPI to the list of static libraries to include during
        the build process.  Driver version detection.
        
    /
        <Various Files>

svn path=/trunk/boinc/; revision=17274
2009-02-16 21:35:19 +00:00
Charlie Fenton ab8d50e594 SS: On Windows, make path strings Unicode compatible in ss coordinator
svn path=/trunk/boinc/; revision=17273
2009-02-14 01:43:08 +00:00
David Anderson b22e99c26f - GUI RPC: add master_url and local_revision to PROJECT_CONFIG struct.
The former will allow the Manager to verify project URLs

svn path=/trunk/boinc/; revision=17271
2009-02-14 00:43:27 +00:00
David Anderson 1d43d654c6 - client: fix bug in time-of-day limit prefs (both CPU and network)
svn path=/trunk/boinc/; revision=17270
2009-02-14 00:34:11 +00:00
David Anderson 2afd98ae70 - client: fix bug where master fetch failure doesn't clear request flag,
leading to infinite retry without backoff

svn path=/trunk/boinc/; revision=17269
2009-02-14 00:05:02 +00:00
David Anderson adbff769c8 - Manager: add GPU preference to advanced prefs dialog
svn path=/trunk/boinc/; revision=17259
2009-02-13 17:53:10 +00:00
David Anderson 9db7b1f242 - GUI RPC: "get prefs" RPC was messed up by yesterdays's checkin;
also, change all bools to <foo>0|1</foo> rather than <foo/>

svn path=/trunk/boinc/; revision=17258
2009-02-13 17:45:23 +00:00
Charlie Fenton ccca6db3d7 ss_app: Under sandbox security, set boincscr permissions the same as for BOINC Manager
svn path=/trunk/boinc/; revision=17255
2009-02-13 11:07:50 +00:00
David Anderson f29dea8e02 - client: bug fix for GPU pref
svn path=/trunk/boinc/; revision=17247
2009-02-12 19:34:27 +00:00
David Anderson 4526c0bb3d - client, web: add preference for not using GPU while computer busy
svn path=/trunk/boinc/; revision=17235
2009-02-12 18:04:30 +00:00