about summary refs log tree commit diff
path: root/pkgs/by-name/pa/pahole/threading-reproducibility.patch
blob: 15893ce2d035c1df14f677d2bd11d45aa2704744 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
diff --git a/pahole.c b/pahole.c
index 6fc4ed6..a4e306f 100644
--- a/pahole.c
+++ b/pahole.c
@@ -1687,8 +1687,11 @@ static error_t pahole__options_parser(int key, char *arg,
 		  class_name = arg;			break;
 	case 'j':
 #if _ELFUTILS_PREREQ(0, 178)
-		  conf_load.nr_jobs = arg ? atoi(arg) :
-					    sysconf(_SC_NPROCESSORS_ONLN) * 1.1;
+		  // Force single thread if reproducibility is desirable.
+		  if (!getenv("SOURCE_DATE_EPOCH")) {
+			  conf_load.nr_jobs = arg ? atoi(arg) :
+						    sysconf(_SC_NPROCESSORS_ONLN) * 1.1;
+		  }
 #else
 		  fputs("pahole: Multithreading requires elfutils >= 0.178. Continuing with a single thread...\n", stderr);
 #endif