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)
Dec 20 2023, 1:14 AM
Unknown Object (File)
Nov 21 2023, 4:19 AM
Unknown Object (File)
Sep 11 2023, 1:48 PM
Unknown Object (File)
Aug 27 2023, 3:02 PM
Unknown Object (File)
Jul 3 2023, 10:28 PM
Unknown Object (File)
May 9 2023, 12:17 AM
Unknown Object (File)
Feb 20 2023, 1:01 AM
Unknown Object (File)
Nov 29 2022, 8:08 PM
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.