linux/tools
Suren Baghdasaryan aed5a8df3d tests: add pidfd poll tests
This adds testing for polling on pidfd of a process being killed. Test runs
10000 iterations by default to stress test pidfd polling functionality.
It accepts an optional command-line parameter to override the number or
iterations to run.
Specifically, it tests for:
- pidfd_open on a child process succeeds
- pidfd_send_signal on a child process succeeds
- polling on pidfd succeeds and returns exactly one event
- returned event is POLLIN
- event is received within 3 secs of the process being killed

10000 iterations was chosen because of the race condition being tested
which is not consistently reproducible but usually is revealed after less
than 2000 iterations.
Reveals race fixed by commit b191d6491b ("pidfd: fix a poll race when setting exit_state")

Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Link: https://lore.kernel.org/r/20190726162226.252750-2-surenb@google.com
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2019-08-06 19:52:41 +02:00
..
accounting
arch tools arch x86: Sync asm/cpufeatures.h with the with the kernel 2019-07-08 13:47:14 -03:00
bpf tools: bpftool: add raw_tracepoint_writable prog type to header 2019-07-12 15:14:42 +02:00
build tools build: Check if gettid() is available before providing helper 2019-07-07 17:53:09 -03:00
cgroup
crypto
debugging
firewire treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
firmware Driver Core and debugfs changes for 5.3-rc1 2019-07-12 12:24:03 -07:00
gpio Bulk GPIO changes for the v5.3 kernel cycle: 2019-07-09 09:07:00 -07:00
hv treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 280 2019-06-05 17:36:36 +02:00
iio Second set of IIO device support, features, cleanups and minor fixes for 5.3. 2019-07-01 10:58:13 +02:00
include Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2019-07-19 10:06:06 -07:00
io_uring
kvm/kvm_stat treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 499 2019-06-19 17:09:53 +02:00
laptop treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 505 2019-06-19 17:11:22 +02:00
leds
lib Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2019-07-19 10:06:06 -07:00
memory-model tools/memory-model: Improve data-race detection 2019-06-24 09:08:54 -07:00
nfsd
objtool objtool: Support conditional retpolines 2019-07-18 21:01:10 +02:00
pci pci-v5.3-changes 2019-07-15 20:44:49 -07:00
pcmcia treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 247 2019-06-19 17:09:08 +02:00
perf Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2019-07-20 11:06:12 -07:00
power kbuild: create *.mod with full directory path and remove MODVERDIR 2019-07-18 02:19:31 +09:00
scripts
spi treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 178 2019-05-30 11:29:19 -07:00
testing tests: add pidfd poll tests 2019-08-06 19:52:41 +02:00
thermal/tmon
time treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
usb treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
virtio treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 482 2019-06-19 17:09:52 +02:00
vm tools/vm/slabinfo: add sorting info to help menu 2019-07-12 11:05:46 -07:00
wmi treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
Makefile tools/power/x86: A tool to validate Intel Speed Select commands 2019-07-03 15:37:09 +03:00