Page MenuHomeFreeBSD

Fix building 'usr.bin/sort' with threads support
Needs ReviewPublic

Authored by zakharov.vv_gmail.com on Dec 2 2016, 12:24 PM.
Tags
None
Referenced Files
Unknown Object (File)
Nov 12 2025, 9:49 PM
Unknown Object (File)
Oct 26 2025, 4:25 PM
Unknown Object (File)
Oct 26 2025, 9:21 AM
Unknown Object (File)
Oct 26 2025, 9:21 AM
Unknown Object (File)
Oct 26 2025, 2:42 AM
Unknown Object (File)
Oct 21 2025, 6:05 AM
Unknown Object (File)
Sep 28 2025, 1:58 AM
Unknown Object (File)
Sep 21 2025, 8:13 AM
Subscribers
None

Details

Reviewers
delphij
Summary

When WITH_SORT_THREADS is set, usr.bin/sort build fails with this errors:

/usr/src/usr.bin/sort/radixsort.c:144:17: error: mutex 'g_ls_mutex' is not held on every path through here [-Werror,-Wthread-safety-analysis]
        new_ls->next = g_ls;
                       ^
/usr/src/usr.bin/sort/radixsort.c:141:3: note: mutex acquired here
                pthread_mutex_lock(&g_ls_mutex);
                ^
/usr/src/usr.bin/sort/radixsort.c:149:3: error: releasing mutex 'g_ls_mutex' that was not held [-Werror,-Wthread-safety-analysis]
                pthread_mutex_unlock(&g_ls_mutex);
                ^
2 errors generated.
*** Error code 1

It seems to be ThreadSafetyAnasysis false positive (http://clang.llvm.org/docs/ThreadSafetyAnalysis.html#conditional-locks).

Patch fixes build by setting NO_WERROR when WITH_SORT_THREADS is set.

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

zakharov.vv_gmail.com retitled this revision from to Fix building 'usr.bin/sort' with threads support.
zakharov.vv_gmail.com updated this object.
zakharov.vv_gmail.com edited the test plan for this revision. (Show Details)
zakharov.vv_gmail.com added a reviewer: delphij.