[PATCH v2 00/10] Reduce #ifdef NO_PTHREADS
- From
Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
- Date
- Oct 27, 2018, 17:29 UTC
- Message-ID
- <20181027173008.18852-1-pclouds@gmail.com>
- In-Reply-To
- <20181027071003.1347-1-pclouds@gmail.com>
The send-pack.c patch is dropped since it's tied to async code and like transport-helper.c (or more cleanups in index-pack.c) could be left for later.
I added one more patch to shut up -Wmaybe-uninitialized but since I could not reproduce it, Jeff would need to verify if it works for him.
Nguyễn Thái Ngọc Duy (10): thread-utils: macros to unconditionally compile pthreads API index-pack: remove #ifdef NO_PTHREADS name-hash.c: remove #ifdef NO_PTHREADS attr.c: remove #ifdef NO_PTHREADS grep: remove #ifdef NO_PTHREADS preload-index.c: remove #ifdef NO_PTHREADS pack-objects: remove #ifdef NO_PTHREADS read-cache.c: remove #ifdef NO_PTHREADS Clean up pthread_create() error handling read-cache.c: initialize copy_len to shut up gcc 8
Makefile | 2 +- attr.c | 14 --------- builtin/grep.c | 59 ++++++++++++++---------------------- builtin/index-pack.c | 68 +++++++++++------------------------------- builtin/pack-objects.c | 26 ++-------------- grep.c | 6 ---- grep.h | 6 ---- name-hash.c | 38 +++++++++-------------- pack-objects.h | 6 ---- preload-index.c | 23 +++++--------- read-cache.c | 53 ++++++++++++-------------------- run-command.c | 2 +- thread-utils.c | 48 +++++++++++++++++++++++++++++ thread-utils.h | 48 +++++++++++++++++++++++++++-- 14 files changed, 178 insertions(+), 221 deletions(-)
Range-diff against v1:
1: fd4926a83a ! 1: 2791c06629 thread-utils: macros to unconditionally compile pthreads API
@@ -146,6 +146,7 @@
+#define pthread_t int
+#define pthread_mutex_t int
+#define pthread_cond_t int
++#define pthread_key_t int
+
+#define pthread_mutex_init(mutex, attr) dummy_pthread_init(mutex)
+#define pthread_mutex_lock(mutex)
2: 47b1f63fdd = 2: 61b3efceee index-pack: remove #ifdef NO_PTHREADS
3: a842b27e1e = 3: 93aa33eaa6 name-hash.c: remove #ifdef NO_PTHREADS
4: c0939283c3 = 4: 5d9441d8e2 attr.c: remove #ifdef NO_PTHREADS
5: 6c6f3a0d28 < -: ---------- send-pack.c: remove #ifdef NO_PTHREADS
6: 9f6e259fb4 ! 5: 834b19d5c6 grep: remove #ifdef NO_PTHREADS
@@ -13,6 +13,16 @@
static pthread_t *threads;
/* We use one producer thread and THREADS consumer
+@@
+ int hit = 0;
+ int i;
+
++ if (!HAVE_THREADS)
++ return 0;
++
+ grep_lock();
+ all_work_added = 1;
+
@@
return hit;
@@ -136,15 +146,6 @@
if (show_in_pager && (cached || list.nr))
die(_("--open-files-in-pager only works on the worktree"));
-@@
- hit = grep_objects(&opt, &pathspec, &list);
- }
-
-- if (num_threads)
-+ if (HAVE_THREADS && num_threads)
- hit |= wait_all();
- if (hit && show_in_pager)
- run_pager(&opt, prefix);
diff --git a/grep.c b/grep.c
--- a/grep.c
7: 97fb2fdba4 = 6: 10969f86ae preload-index.c: remove #ifdef NO_PTHREADS
8: b8aeb2776b = 7: 7e83190364 pack-objects: remove #ifdef NO_PTHREADS
9: 40a9bfb8f2 = 8: 404e9d9041 read-cache.c: remove #ifdef NO_PTHREADS
10: 0bb0c667ff = 9: 046008b4ef Clean up pthread_create() error handling
-: ---------- > 10: 2ad9554687 read-cache.c: initialize copy_len to shut up gcc 8-- 2.19.1.647.g708186aaf9