_umtx_op: fix a compat32 bug in UMTX_OP_NWAKE_PRIVATESpecifically, if we're waking up some value n > BATCH_SIZE, then thecopyin(9) is wrong on the second iteration due to upp being the wrong type.
_umtx_op: fix a compat32 bug in UMTX_OP_NWAKE_PRIVATESpecifically, if we're waking up some value n > BATCH_SIZE, then thecopyin(9) is wrong on the second iteration due to upp being the wrong type.upp is currently a uint32_t**, so upp + pos advances it by twice as manyelements as it should (host pointer size vs. compat32 pointer size).Fix it by just making upp a uint32_t*; it's still technically a doublepointer, but the distinction doesn't matter all that much here since we'rejust doing arithmetic on it.Add a test case that demonstrates the problem, placed with the libthr testssince one messing with _umtx_op should be running these tests. Running undercompat32, the new test case will hang as threads after the first 128 getmissed in the wake. it's not immediately clear how to hit it in practice,since pthread_cond_broadcast() uses a smaller (sleepq batch?) size observedto be around ~50 -- I did not spend much time digging into it.The uintptr_t change makes no functional difference, but i've tossed it insince it's more accurate (semantically).Reported by: Andrew Gierth (andrew_tao173.riddles.org.uk, inspection)Reviewed by: kibMFC after: 1 weekDifferential Revision: https://reviews.freebsd.org/D27231
show more ...
build: provide a default WARNS for all in-tree buildsThe current default is provided in various Makefile.inc in some top-leveldirectories and covers a good portion of the tree, but doesn't cover p
build: provide a default WARNS for all in-tree buildsThe current default is provided in various Makefile.inc in some top-leveldirectories and covers a good portion of the tree, but doesn't cover partsof the build a little deeper (e.g. libcasper).Provide a default in src.sys.mk and set WARNS to it in bsd.sys.mk if thatvariable is defined. This lets us relatively cleanly provide a default WARNSno matter where you're building in the src tree without breaking thingsoutside of the tree.Crunchgen has been updated as a bootstrap tool to work on this changebecause it needs r365605 at a minimum to succeed. The cleanup necessary tosuccessfully walk over this change on WITHOUT_CLEAN builds has been added.There is a supplemental project to this to list all of the warnings that areencountered when the environment has WARNS=6 NO_WERROR=yes:https://warns.kevans.dev -- this project will hopefully eventually go awayin favor of CI doing a much better job than it.Reviewed by: emaste, brooks, ngie (all earlier version)Reviewed by: emaste, arichardson (depend-cleanup.sh change)Differential Revision: https://reviews.freebsd.org/D26455
Use MACHINE_CPUARCH in preference MACHINE for userland.Sponsored by: Netflix
DIRDEPS_BUILD: Update dependencies.Sponsored by: Dell EMC Isilon
Upgrade NetBSD tests to 01.11.2017_23.20 snapshotThis contains some new testcases in /usr/tests/...:- .../lib/libc- .../lib/libthr- .../lib/msun- .../sys/kernTested on: amd64, i386MFC after
Upgrade NetBSD tests to 01.11.2017_23.20 snapshotThis contains some new testcases in /usr/tests/...:- .../lib/libc- .../lib/libthr- .../lib/msun- .../sys/kernTested on: amd64, i386MFC after: 1 month
Merge ^/user/ngie/release-pkg-fix-tests to unbreak how test files are installedafter r298107Summary of changes:- Replace all instances of FILES/TESTS with ${PACKAGE}FILES. This ensures that na
Merge ^/user/ngie/release-pkg-fix-tests to unbreak how test files are installedafter r298107Summary of changes:- Replace all instances of FILES/TESTS with ${PACKAGE}FILES. This ensures that namespacing is kept with FILES appropriately, and that this shouldn't need to be repeated if the namespace changes -- only the definition of PACKAGE needs to be changed- Allow PACKAGE to be overridden by callers instead of forcing it to always be `tests`. In the event we get to the point where things can be split up enough in the base system, it would make more sense to group the tests with the blocks they're a part of, e.g. byacc with byacc-tests, etc- Remove PACKAGE definitions where possible, i.e. where FILES wasn't used previously.- Remove unnecessary TESTSPACKAGE definitions; this has been elided into bsd.tests.mk- Remove unnecessary BINDIRs used previously with ${PACKAGE}FILES; ${PACKAGE}FILESDIR is now automatically defined in bsd.test.mk.- Fix installation of files under data/ subdirectories in lib/libc/tests/hash and lib/libc/tests/net/getaddrinfo- Remove unnecessary .include <bsd.own.mk>s (some opportunistic cleanup)Document the proposed changes in share/examples/tests/tests/... via examplesso it's clear that ${PACKAGES}FILES is the suggested way forward in terms ofreplacing FILES. share/mk/bsd.README didn't seem like the appropriate methodof communicating that info.MFC after: never probablyX-MFC with: r298107PR: 209114Relnotes: yesTested with: buildworld, installworld, checkworld; buildworld, packageworldSponsored by: EMC / Isilon Storage Division
DIRDEPS_BUILD: Connect MK_TESTS.Sponsored by: EMC / Isilon Storage Division
Avoid adding the '-release' suffix to non-debug kernel packages.Sponsored by: The FreeBSD Foundation
Fix LDADD/DPADD that should be LIBADD.Sponsored by: EMC / Isilon Storage Division
Refactor the test/ Makefiles after recent changes to bsd.test.mk (r289158) andnetbsd-tests.test.mk (r289151)- Eliminate explicit OBJTOP/SRCTOP setting- Convert all ad hoc NetBSD test integration
Refactor the test/ Makefiles after recent changes to bsd.test.mk (r289158) andnetbsd-tests.test.mk (r289151)- Eliminate explicit OBJTOP/SRCTOP setting- Convert all ad hoc NetBSD test integration over to netbsd-tests.test.mk- Remove unnecessary TESTSDIR setting- Use SRCTOP where possible for clarityMFC after: 2 weeksSponsored by: EMC / Isilon Storage Divison
Disable the tests that use makecontext on arm64, it still needs to bewritten.
Add reachover Makefiles for contrib/netbsd-tests/lib/libpthread aslib/libthr/testsA variant of this code has been tested on amd64/i386 for some time byEMC/Isilon on 10-STABLE/11-CURRENT. It build
Add reachover Makefiles for contrib/netbsd-tests/lib/libpthread aslib/libthr/testsA variant of this code has been tested on amd64/i386 for some time byEMC/Isilon on 10-STABLE/11-CURRENT. It builds on other architectures, but thecode will remain off until it's proven it works on virtual hardware or realhardware on other architecturesOriginal work by: phoSponsored by: EMC / Isilon Storage Division