svn commit: r329255 - stable/11/usr.bin/sort

Mark Johnston markj at FreeBSD.org
Wed Feb 14 00:32:20 UTC 2018


Author: markj
Date: Wed Feb 14 00:32:19 2018
New Revision: 329255
URL: https://svnweb.freebsd.org/changeset/base/329255

Log:
  MFC r328995:
  Fix the WITH_SORT_THREADS build.
  
  PR:	201664

Modified:
  stable/11/usr.bin/sort/radixsort.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/usr.bin/sort/radixsort.c
==============================================================================
--- stable/11/usr.bin/sort/radixsort.c	Wed Feb 14 00:31:45 2018	(r329254)
+++ stable/11/usr.bin/sort/radixsort.c	Wed Feb 14 00:32:19 2018	(r329255)
@@ -127,6 +127,14 @@ have_sort_left(void)
 
 #endif /* SORT_THREADS */
 
+static void
+_push_ls(struct level_stack *ls)
+{
+
+	ls->next = g_ls;
+	g_ls = ls;
+}
+
 /*
  * Push sort level to the stack
  */
@@ -139,22 +147,14 @@ push_ls(struct sort_level *sl)
 	new_ls->sl = sl;
 
 #if defined(SORT_THREADS)
-	if (nthreads > 1)
+	if (nthreads > 1) {
 		pthread_mutex_lock(&g_ls_mutex);
-#endif
-
-	new_ls->next = g_ls;
-	g_ls = new_ls;
-
-#if defined(SORT_THREADS)
-	if (nthreads > 1)
+		_push_ls(new_ls);
 		pthread_cond_signal(&g_ls_cond);
-#endif
-
-#if defined(SORT_THREADS)
-	if (nthreads > 1)
 		pthread_mutex_unlock(&g_ls_mutex);
+	} else
 #endif
+		_push_ls(new_ls);
 }
 
 /*


More information about the svn-src-all mailing list