On Wed, Jun 16, 2021 at 03:42:04PM -0500, Bruce Dubbs wrote: > When I built version v2.37, make check hung on me. The problem was in my > kernel configuration, but I thought I would pass this on. > > First of all, my biggest problem was finding out what had failed. A simple > 'make check' ran the tests and when it got to the end, hung. > > I could not find any documentation about running the tests, but diving into > the Makefile led me to tests/run.sh. By default this runs tests using all > cores, but it is unclear if this is meant to be run directly. The tests are designed for smart people, like you who, are able to debug it ;-) > In any case running run.sh --parallel=1 (instead of the default 24) allowed > me to find the problem test, tests/ts/lsns/ioctl_ns. In this test, it is > doing: The --parallel=1 is the default when you execute ./run.sh from command line. This is the way I usually use the tests. The "make check" executes it in parallel to make it faster for automated execution (github actions, travis, random QA, etc.) > > my_userns=$(stat -c %i -L /proc/self/ns/user) > > My problem was that /proc/self/ns/user did not exist on my system. This was > due to a missing CONFIG option in my kernel configuration. Adding that and > rebuilding the kernel allowed all tests to pass. > > One solution to this problem may be to test for the existence of the file > before running 'stat' similar to the tests for programs like 'touch' and Sounds good. Please, send patch. For 3rd party programs you need "ts_check_prog <progname>" at the beginning of the test. > 'uniq'. Since this is such an unusual situation, I can understand if you > just ignore the issue, however I thought you should know about it. It's definitely important to run the tests in more environments to make it stable and I'm happy that we have contributors from non-mainstream distributions. So, thanks for your feedback. Karel -- Karel Zak <kzak@xxxxxxxxxx> http://karelzak.blogspot.com