On Fri, 2019-10-25 at 14:11 +0200, Michal Hocko wrote: > On Fri 25-10-19 14:05:05, Michal Hocko wrote: > [...] > > This smells like something that could be runtime specific. Could > > you > > post strace output of your testcase? > > Ohh and /proc/<pid>/smaps while the strace is hung on mlockall > please. Sure, see below. strace ./test execve("./test", ["./test"], 0x7ffd6ba0f970 /* 89 vars */) = 0 brk(NULL) = 0x564ee2c79000 arch_prctl(0x3001 /* ARCH_??? */, 0x7ffd58f1d460) = -1 EINVAL (Invalid argument) access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=176037, ...}) = 0 mmap(NULL, 176037, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f8be92bb000 close(3) = 0 openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360r\2\0\0\0\0\0"..., 832) = 832 lseek(3, 64, SEEK_SET) = 64 read(3, "\6\0\0\0\4\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 784) = 784 lseek(3, 848, SEEK_SET) = 848 read(3, "\4\0\0\0\20\0\0\0\5\0\0\0GNU\0\2\0\0\300\4\0\0\0\3\0\0\0\0\0\0\0", 32) = 32 lseek(3, 880, SEEK_SET) = 880 read(3, "\4\0\0\0\24\0\0\0\3\0\0\0GNU\0!U\364U\255V\275\207\34\202%\274\312\205 \356%"..., 68) = 68 fstat(3, {st_mode=S_IFREG|0755, st_size=2025032, ...}) = 0 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f8be92b9000 lseek(3, 64, SEEK_SET) = 64 read(3, "\6\0\0\0\4\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 784) = 784 lseek(3, 848, SEEK_SET) = 848 read(3, "\4\0\0\0\20\0\0\0\5\0\0\0GNU\0\2\0\0\300\4\0\0\0\3\0\0\0\0\0\0\0", 32) = 32 lseek(3, 880, SEEK_SET) = 880 read(3, "\4\0\0\0\24\0\0\0\3\0\0\0GNU\0!U\364U\255V\275\207\34\202%\274\312\205 \356%"..., 68) = 68 mmap(NULL, 2032984, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f8be90c8000 mmap(0x7f8be90ed000, 1540096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x25000) = 0x7f8be90ed000 mmap(0x7f8be9265000, 303104, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x19d000) = 0x7f8be9265000 mmap(0x7f8be92af000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1e6000) = 0x7f8be92af000 mmap(0x7f8be92b5000, 13656, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f8be92b5000 close(3) = 0 arch_prctl(ARCH_SET_FS, 0x7f8be92ba540) = 0 mprotect(0x7f8be92af000, 12288, PROT_READ) = 0 mprotect(0x564ee18c8000, 4096, PROT_READ) = 0 mprotect(0x7f8be9312000, 4096, PROT_READ) = 0 munmap(0x7f8be92bb000, 176037) = 0 fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0xa), ...}) = 0 brk(NULL) = 0x564ee2c79000 brk(0x564ee2c9a000) = 0x564ee2c9a000 write(1, "Before mlockall(MCL_CURRENT)\n", 29Before mlockall(MCL_CURRENT) ) = 29 mlockall(MCL_CURRENT ^ the strace stops there (no closing bracket) Unlike non-strace runs, I've got to do a `kill -9 $(pidof test)` cat /proc/$(pidof test)/smaps 564ee18c5000-564ee18c6000 r--p 00000000 103:02 49174659 /home/snazy/devel/misc/zzz/test Size: 4 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 4 kB Pss: 4 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 4 kB Private_Dirty: 0 kB Referenced: 4 kB Anonymous: 0 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 4 kB THPeligible: 0 VmFlags: rd mr mw me dw lo sd 564ee18c6000-564ee18c7000 r-xp 00001000 103:02 49174659 /home/snazy/devel/misc/zzz/test Size: 4 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 4 kB Pss: 4 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 4 kB Private_Dirty: 0 kB Referenced: 4 kB Anonymous: 0 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 4 kB THPeligible: 0 VmFlags: rd ex mr mw me dw lo sd 564ee18c7000-564ee18c8000 r--p 00002000 103:02 49174659 /home/snazy/devel/misc/zzz/test Size: 4 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 4 kB Pss: 4 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 4 kB Private_Dirty: 0 kB Referenced: 4 kB Anonymous: 0 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 4 kB THPeligible: 0 VmFlags: rd mr mw me dw lo sd 564ee18c8000-564ee18c9000 r--p 00002000 103:02 49174659 /home/snazy/devel/misc/zzz/test Size: 4 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 4 kB Pss: 4 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 4 kB Referenced: 4 kB Anonymous: 4 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 4 kB THPeligible: 0 VmFlags: rd mr mw me dw lo ac sd 564ee18c9000-564ee18ca000 rw-p 00003000 103:02 49174659 /home/snazy/devel/misc/zzz/test Size: 4 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 4 kB Pss: 4 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 4 kB Referenced: 4 kB Anonymous: 4 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 4 kB THPeligible: 0 VmFlags: rd wr mr mw me dw lo ac sd 564ee2c79000-564ee2c9a000 rw-p 00000000 00:00 0 [heap] Size: 132 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 132 kB Pss: 132 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 132 kB Referenced: 132 kB Anonymous: 132 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 132 kB THPeligible: 0 VmFlags: rd wr mr mw me lo ac sd 7f8be90c8000-7f8be90ed000 r--p 00000000 103:02 44307431 /lib/x86_64-linux-gnu/libc-2.30.so Size: 148 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 144 kB Pss: 0 kB Shared_Clean: 144 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 0 kB Referenced: 144 kB Anonymous: 0 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 0 kB THPeligible: 0 VmFlags: rd mr mw me lo sd 7f8be90ed000-7f8be9265000 r-xp 00025000 103:02 44307431 /lib/x86_64-linux-gnu/libc-2.30.so Size: 1504 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 832 kB Pss: 5 kB Shared_Clean: 832 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 0 kB Referenced: 832 kB Anonymous: 0 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 5 kB THPeligible: 0 VmFlags: rd ex mr mw me lo sd 7f8be9265000-7f8be92af000 r--p 0019d000 103:02 44307431 /lib/x86_64-linux-gnu/libc-2.30.so Size: 296 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 64 kB Pss: 0 kB Shared_Clean: 64 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 0 kB Referenced: 64 kB Anonymous: 0 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 0 kB THPeligible: 0 VmFlags: rd mr mw me lo sd 7f8be92af000-7f8be92b2000 r--p 001e6000 103:02 44307431 /lib/x86_64-linux-gnu/libc-2.30.so Size: 12 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 12 kB Pss: 12 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 12 kB Referenced: 12 kB Anonymous: 12 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 12 kB THPeligible: 0 VmFlags: rd mr mw me lo ac sd 7f8be92b2000-7f8be92b5000 rw-p 001e9000 103:02 44307431 /lib/x86_64-linux-gnu/libc-2.30.so Size: 12 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 12 kB Pss: 12 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 12 kB Referenced: 12 kB Anonymous: 12 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 12 kB THPeligible: 0 VmFlags: rd wr mr mw me lo ac sd 7f8be92b5000-7f8be92bb000 rw-p 00000000 00:00 0 Size: 24 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 24 kB Pss: 24 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 24 kB Referenced: 24 kB Anonymous: 24 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 24 kB THPeligible: 0 VmFlags: rd wr mr mw me lo ac sd 7f8be92e6000-7f8be92e7000 r--p 00000000 103:02 44302414 /lib/x86_64-linux-gnu/ld-2.30.so Size: 4 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 4 kB Pss: 0 kB Shared_Clean: 4 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 0 kB Referenced: 4 kB Anonymous: 0 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 0 kB THPeligible: 0 VmFlags: rd mr mw me dw lo sd 7f8be92e7000-7f8be9309000 r-xp 00001000 103:02 44302414 /lib/x86_64-linux-gnu/ld-2.30.so Size: 136 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 136 kB Pss: 0 kB Shared_Clean: 136 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 0 kB Referenced: 136 kB Anonymous: 0 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 0 kB THPeligible: 0 VmFlags: rd ex mr mw me dw lo sd 7f8be9309000-7f8be9311000 r--p 00023000 103:02 44302414 /lib/x86_64-linux-gnu/ld-2.30.so Size: 32 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 32 kB Pss: 0 kB Shared_Clean: 32 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 0 kB Referenced: 32 kB Anonymous: 0 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 0 kB THPeligible: 0 VmFlags: rd mr mw me dw lo sd 7f8be9312000-7f8be9313000 r--p 0002b000 103:02 44302414 /lib/x86_64-linux-gnu/ld-2.30.so Size: 4 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 4 kB Pss: 4 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 4 kB Referenced: 4 kB Anonymous: 4 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 4 kB THPeligible: 0 VmFlags: rd mr mw me dw lo ac sd 7f8be9313000-7f8be9314000 rw-p 0002c000 103:02 44302414 /lib/x86_64-linux-gnu/ld-2.30.so Size: 4 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 4 kB Pss: 4 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 4 kB Referenced: 4 kB Anonymous: 4 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 4 kB THPeligible: 0 VmFlags: rd wr mr mw me dw lo ac sd 7f8be9314000-7f8be9315000 rw-p 00000000 00:00 0 Size: 4 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 4 kB Pss: 4 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 4 kB Referenced: 4 kB Anonymous: 4 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 4 kB THPeligible: 0 VmFlags: rd wr mr mw me lo ac sd 7ffd58efe000-7ffd58f20000 rw-p 00000000 00:00 0 [stack] Size: 136 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 20 kB Pss: 20 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 20 kB Referenced: 20 kB Anonymous: 20 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 20 kB THPeligible: 0 VmFlags: rd wr mr mw me gd lo ac 7ffd58f74000-7ffd58f77000 r--p 00000000 00:00 0 [vvar] Size: 12 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 0 kB Pss: 0 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 0 kB Referenced: 0 kB Anonymous: 0 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 0 kB THPeligible: 0 VmFlags: rd mr pf io de dd sd 7ffd58f77000-7ffd58f78000 r-xp 00000000 00:00 0 [vdso] Size: 4 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 4 kB Pss: 0 kB Shared_Clean: 4 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 0 kB Referenced: 4 kB Anonymous: 0 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 0 kB THPeligible: 0 VmFlags: rd ex mr mw me de sd ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0 [vsyscall] Size: 4 kB KernelPageSize: 4 kB MMUPageSize: 4 kB Rss: 0 kB Pss: 0 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 0 kB Referenced: 0 kB Anonymous: 0 kB LazyFree: 0 kB AnonHugePages: 0 kB ShmemPmdMapped: 0 kB Shared_Hugetlb: 0 kB Private_Hugetlb: 0 kB Swap: 0 kB SwapPss: 0 kB Locked: 0 kB THPeligible: 0 VmFlags: ex