diff options
author | Tomas Chvatal <scarabeus@gentoo.org> | 2009-09-30 11:32:31 +0000 |
---|---|---|
committer | Tomas Chvatal <scarabeus@gentoo.org> | 2009-09-30 11:32:31 +0000 |
commit | e9517e20c0d9f19f838e9b6c026d89d1dbd005ad (patch) | |
tree | 68b16b91f49013507600ea4841d327ba5d9b1ed0 /sci-misc | |
parent | Version bump (bug 287014). (diff) | |
download | gentoo-2-e9517e20c0d9f19f838e9b6c026d89d1dbd005ad.tar.gz gentoo-2-e9517e20c0d9f19f838e9b6c026d89d1dbd005ad.tar.bz2 gentoo-2-e9517e20c0d9f19f838e9b6c026d89d1dbd005ad.zip |
Apply fix for cuda compilation issues. Per bug #286779. Thx to Kacper Kowalik for the patch.
(Portage version: 2.2_rc38/cvs/Linux i686)
Diffstat (limited to 'sci-misc')
-rw-r--r-- | sci-misc/boinc/ChangeLog | 7 | ||||
-rw-r--r-- | sci-misc/boinc/files/6.6.40-cuda.patch | 80 |
2 files changed, 86 insertions, 1 deletions
diff --git a/sci-misc/boinc/ChangeLog b/sci-misc/boinc/ChangeLog index 5f2590b1b305..8f4306ea2aaa 100644 --- a/sci-misc/boinc/ChangeLog +++ b/sci-misc/boinc/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for sci-misc/boinc # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sci-misc/boinc/ChangeLog,v 1.73 2009/09/29 17:45:00 scarabeus Exp $ +# $Header: /var/cvsroot/gentoo-x86/sci-misc/boinc/ChangeLog,v 1.74 2009/09/30 11:32:31 scarabeus Exp $ + + 30 Sep 2009; Tomáš Chvátal <scarabeus@gentoo.org> + +files/6.6.40-cuda.patch: + Apply fix for cuda compilation issues. Per bug #286779. Thx to Kacper + Kowalik for the patch. 29 Sep 2009; Tomáš Chvátal <scarabeus@gentoo.org> +files/6.6.40-as-needed.patch, -boinc-6.6.40.ebuild, diff --git a/sci-misc/boinc/files/6.6.40-cuda.patch b/sci-misc/boinc/files/6.6.40-cuda.patch new file mode 100644 index 000000000000..30b4bba8d880 --- /dev/null +++ b/sci-misc/boinc/files/6.6.40-cuda.patch @@ -0,0 +1,80 @@ +--- boinc-6.6.40.orig/sched/handle_request.cpp 2009-01-14 00:06:02.000000000 +0100 ++++ boinc-6.6.40/sched/handle_request.cpp 2009-09-30 12:22:12.230008604 +0200 +@@ -1172,7 +1172,7 @@ + static inline bool requesting_work() { + if (g_request->work_req_seconds > 0) return true; + if (g_request->cpu_req_secs > 0) return true; +- if (coproc_cuda && coproc_cuda->req_secs) return true; ++ if (g_request->coproc_cuda && g_request->coproc_cuda->req_secs) return true; + return false; + } + +--- boinc-6.6.40.orig/sched/sched_send.cpp 2009-01-15 21:23:20.000000000 +0100 ++++ boinc-6.6.40/sched/sched_send.cpp 2009-09-30 12:23:19.165922065 +0200 +@@ -1443,9 +1443,9 @@ + g_wreq->seconds_to_fill = clamp_req_sec(g_request->work_req_seconds); + g_wreq->cpu_req_secs = clamp_req_sec(g_request->cpu_req_secs); + g_wreq->cpu_req_instances = g_request->cpu_req_instances; +- if (coproc_cuda) { +- g_wreq->cuda_req_secs = clamp_req_sec(coproc_cuda->req_secs); +- g_wreq->cuda_req_instances = coproc_cuda->req_instances; ++ if (g_request->coproc_cuda) { ++ g_wreq->cuda_req_secs = clamp_req_sec(g_request->coproc_cuda->req_secs); ++ g_wreq->cuda_req_instances = g_request->coproc_cuda->req_instances; + } + if (g_wreq->cpu_req_secs || g_wreq->cuda_req_secs) { + g_wreq->rsc_spec_request = true; +--- boinc-6.6.40.orig/sched/server_types.cpp 2009-01-13 00:05:49.000000000 +0100 ++++ boinc-6.6.40/sched/server_types.cpp 2009-09-30 12:23:57.220083086 +0200 +@@ -168,6 +168,7 @@ + have_time_stats_log = false; + client_cap_plan_class = false; + sandbox = -1; ++ coproc_cuda = 0; + + fgets(buf, sizeof(buf), fin); + if (!match_tag(buf, "<scheduler_request>")) return "no start tag"; +@@ -327,6 +328,7 @@ + } + if (match_tag(buf, "coprocs")) { + coprocs.parse(fin); ++ coproc_cuda = (COPROC_CUDA*)coprocs.lookup("CUDA"); + continue; + } + if (parse_bool(buf, "client_cap_plan_class", client_cap_plan_class)) continue; +--- boinc-6.6.40.orig/sched/sched_plan.h 2008-08-06 20:36:30.000000000 +0200 ++++ boinc-6.6.40/sched/sched_plan.h 2009-09-30 12:28:05.856453380 +0200 +@@ -18,4 +18,13 @@ + #include "boinc_db.h" + #include "server_types.h" + +-extern bool app_plan(SCHEDULER_REQUEST&, char* plan_class, HOST_USAGE&); ++// reasons for the planning function to reject a host ++ ++#define PLAN_REJECT_PREFS 1 ++#define PLAN_REJECT_NO_COPROC 2 ++#define PLAN_REJECT_COPROC_VERSION 3 ++#define PLAN_REJECT_COPROC_MEM 4 ++#define PLAN_REJECT_COPROC_SPEED 5 ++#define PLAN_REJECT_UNKNOWN 6 ++ ++extern int app_plan(SCHEDULER_REQUEST&, char* plan_class, HOST_USAGE&); +--- boinc-6.6.40.orig/sched/server_types.h 2009-01-13 00:47:52.000000000 +0100 ++++ boinc-6.6.40/sched/server_types.h 2009-09-30 12:26:01.010255672 +0200 +@@ -103,6 +103,8 @@ + // Note: this is zeroed out in SCHEDULER_REPLY constructor + // + struct WORK_REQ { ++ bool anonymous_platform; ++ + // Flags used by old-style scheduling, + // while making multiple passes through the work array + bool infeasible_only; +@@ -320,6 +322,7 @@ + HOST host; // request message is parsed into here. + // does NOT contain the full host record. + COPROCS coprocs; ++ COPROC_CUDA* coproc_cuda; + std::vector<RESULT> results; + // completed results being reported + std::vector<MSG_FROM_HOST_DESC> msgs_from_host; |