Hang in FUTEX_WAKE_PRIVATE after clock_gettime
Jeffrey Walton
noloader at gmail.com
Sat Mar 24 04:43:42 EDT 2018
Hi Everyone,
I'm working with Botan (https://botan.randombit.net/). It is a TLS
security library written in C++11.
On an old Pentium III machine the self tests are hanging. Other
platforms are OK. The strace tail is shown below.
I am not that familiar with this type of debugging, and I am looking
for a direction to go. I've seen some similar problems on the web,
including an indictment of clock_gettime, but the problems lack a good
analysis of the problem.
My question is, is a futex with a 2147483647 or -1 expected? Where
should I be looking to begin to narrow the problem down?
Thanks in advance.
**************************************************
$ sudo strace ./botan-test block
execve("./botan-test", ["./botan-test", "block"], [/* 14 vars */]) = 0
brk(NULL) = 0x9af9000
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
readlink("/proc/self/exe", "/home/jwalton/botan/botan-test", 4096) = 30
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7f4e000
...
stat64("src/tests/data/block/noekeon.vec", {st_mode=S_IFREG|0664,
st_size=121320, ...}) = 0
stat64("src/tests/data/block/aria.vec", {st_mode=S_IFREG|0664,
st_size=2663, ...}) = 0
stat64("src/tests/data/block/des.vec", {st_mode=S_IFREG|0664,
st_size=28722, ...}) = 0
getdents(3, /* 0 entries */, 32768) = 0
close(3) = 0
open("src/tests/data/block/aes.vec", O_RDONLY|O_LARGEFILE) = 3
read(3, "# Test vectors from NIST CAVP AE"..., 8191) = 8191
clock_gettime(CLOCK_REALTIME, {1521879372, 559396333}) = 0
futex(0xb78b6a34, FUTEX_WAKE_PRIVATE, 2147483647) = 0
<hang here>
*************************
This old machine runs Peppermint, which is a Ubuntu derivative.
$ lsb_release -a
No LSB modules are available.
Distributor ID: Peppermint
Description: Peppermint 8 Eight
Release: 8
Codename: xenial
$ uname -a
Linux coppermine 4.13.0-37-generic #42~16.04.1-Ubuntu SMP Wed Mar 7
16:02:25 UTC 2018 i686 i686 i686 GNU/Linux
More information about the Kernelnewbies
mailing list