kernel_optimize_test/Documentation
Davidlohr Bueso ab51fbab39 futex: Fault/error injection capabilities
Although futexes are well known for being a royal pita,
we really have very little debugging capabilities - except
for relying on tglx's eye half the time.

By simply making use of the existing fault-injection machinery,
we can improve this situation, allowing generating artificial
uaddress faults and deadlock scenarios. Of course, when this is
disabled in production systems, the overhead for failure checks
is practically zero -- so this is very cheap at the same time.
Future work would be nice to now enhance trinity to make use of
this.

There is a special tunable 'ignore-private', which can filter
out private futexes. Given the tsk->make_it_fail filter and
this option, pi futexes can be narrowed down pretty closely.

Signed-off-by: Davidlohr Bueso <dbueso@suse.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Darren Hart <darren@dvhart.com>
Cc: Davidlohr Bueso <dave@stgolabs.net>
Link: http://lkml.kernel.org/r/1435645562-975-3-git-send-email-dave@stgolabs.net
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2015-07-20 11:45:45 +02:00
..
ABI platform-drivers-x86 got 4.2 2015-07-01 18:55:34 -07:00
accounting
acpi ACPI: Constify ACPI device IDs in documentation 2015-06-19 01:14:15 +02:00
aoe
arm ARM: SoC: driver updates for v4.2 2015-06-26 11:54:29 -07:00
arm64 arm64: use fixmap region for permanent FDT mapping 2015-06-02 16:31:33 +01:00
auxdisplay
backlight
blackfin Docs: blackfin: Use new switch macro SAMPLE_IRQ_TIMER instead of IRQ_TIMER5 2015-05-07 09:35:14 -06:00
block
blockdev zram: add dynamic device add/remove functionality 2015-06-25 17:00:36 -07:00
bus-devices
cdrom
cgroups Merge branch 'for-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup 2015-06-26 19:50:04 -07:00
cma
connector
console
cpu-freq Documentation updates for 4.2 2015-06-24 20:01:36 -07:00
cpuidle
cris
crypto
development-process
device-mapper dm stats: collect and report histogram of IO latencies 2015-06-17 12:40:40 -04:00
devicetree - remoteproc fixes/cleanups from Suman Anna 2015-07-03 14:57:50 -07:00
dmaengine Merge branch 'topic/pxa' into for-linus 2015-06-25 09:21:58 +05:30
DocBook Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2015-06-26 13:18:51 -07:00
driver-model
dvb
early-userspace
EDID
extcon
fault-injection futex: Fault/error injection capabilities 2015-07-20 11:45:45 +02:00
fb
features Documentation/features: Explain kernel feature descriptions and add visualization script 2015-06-03 12:59:38 +02:00
filesystems Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2015-07-04 19:36:06 -07:00
firmware_class
fmc
frv
gpio Documentation updates for 4.2 2015-06-24 20:01:36 -07:00
hid
hwmon hwmon: Document which I2C addresses can be probed 2015-07-03 14:39:05 +02:00
i2c Merge branch 'i2c/for-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux 2015-06-25 18:42:39 -07:00
ia64
ide
infiniband
input Doc: Change wikipedia's URL from http to https 2015-06-22 10:14:05 -06:00
ioctl fuse: device fd clone 2015-07-01 16:26:08 +02:00
isdn
ja_JP Doc: ja_JP: Fix typo in HOWTO 2015-06-08 16:43:09 -06:00
kbuild kbuild : Fix documentation of INSTALL_HDR_PATH 2015-06-22 09:56:07 -06:00
kdump
ko_KR
laptops Move freefall program from Documentation/ to tools/ 2015-06-08 16:42:07 -06:00
leds Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds 2015-07-01 19:09:11 -07:00
locking
m68k
memory-devices
metag
mic Char/Misc driver patches for 4.2-rc1 2015-06-26 14:51:15 -07:00
mips
misc-devices Pratyush Anand has moved 2015-06-25 17:00:38 -07:00
mmc
mn10300
mtd
namespaces
netlabel
networking netconsole: implement extended console support 2015-06-25 17:00:39 -07:00
nfc NFC: Fix typo in nfc-hci.txt 2015-06-08 23:15:45 +02:00
nios2
nvdimm libnvdimm: Non-Volatile Devices 2015-06-26 11:23:38 -04:00
parisc
PCI
pcmcia
phy
platform
power PM / runtime: add note about re-calling in during device probe() 2015-05-13 00:02:38 +02:00
powerpc powerpc/tm: Abort syscalls in active transactions 2015-06-19 17:10:28 +10:00
pps Doc:pps: Fix typo in pps.txt 2015-06-22 09:59:28 -06:00
prctl Documentation/prctl: don't build tsc tests when cross compiling 2015-06-22 16:05:04 -06:00
pti
ptp
rapidio
RCU Documentation updates for 4.2 2015-06-24 20:01:36 -07:00
s390 qeth: OSA version of SETBRIDGEPORT command 2015-05-18 12:14:17 -04:00
scheduler sched/dl/Documentation: Split Section 3 2015-05-19 08:39:21 +02:00
scsi Merge branch 'for-4.2/sg' of git://git.kernel.dk/linux-block 2015-06-25 15:22:36 -07:00
security Smack: allow multiple labels in onlycap 2015-06-02 11:53:42 -07:00
serial Doc: serial-rs485.txt: update RS485 driver interface 2015-06-12 17:39:51 -07:00
sh
sound Doc: sound:oss: Fix typo in sound/oss 2015-06-09 17:23:00 +02:00
spi
sysctl coredump: use from_kuid/kgid when formatting corename 2015-06-25 17:00:43 -07:00
target Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending 2015-07-04 14:13:43 -07:00
thermal thermal: support slope and offset coefficients 2015-05-11 19:46:52 -07:00
timers
tpm
trace Documentation: tracing: fix grammar 2015-05-13 15:39:04 -04:00
usb USB patches for 4.2-rc1 2015-06-26 15:59:26 -07:00
vDSO Documentation/vDSO: don't build tests when cross compiling 2015-06-22 16:04:57 -06:00
video4linux [media] Documentation: update cardlists 2015-06-09 18:43:47 -03:00
virtual KVM: x86: mark legacy PCI device assignment as deprecated 2015-06-05 17:26:39 +02:00
vm zswap: runtime enable/disable 2015-06-25 17:00:37 -07:00
w1 w1: Add support for DS28EA00 sequence to w1-therm 2015-05-24 12:08:59 -07:00
watchdog watchdog: omap_wdt: early_enable module parameter 2015-07-01 16:43:17 +02:00
wimax
x86 x86/asm/entry/64: Update path names 2015-07-02 11:08:50 +02:00
xtensa
zh_CN Documentation updates for 4.2 2015-06-24 20:01:36 -07:00
00-INDEX
applying-patches.txt
assoc_array.txt
atomic_ops.txt
bad_memory.txt
basic_profiling.txt
bcache.txt
binfmt_misc.txt
braille-console.txt
bt8xxgpio.txt
btmrvl.txt
BUG-HUNTING
bus-virt-phys-mapping.txt
cachetlb.txt
Changes
circular-buffers.txt
clk.txt clk: Update docs after removal of clk-private.h 2015-05-13 12:32:51 -07:00
coccinelle.txt
CodeOfConflict
CodingStyle Documentation/CodingStyle: fix example macro parenthesis imbalance 2015-05-07 17:07:41 -06:00
cpu-hotplug.txt
cpu-load.txt
cputopology.txt Documentation: Update cputopology.txt 2015-05-27 15:22:15 +02:00
crc32.txt
dcdbas.txt
debugging-modules.txt
debugging-via-ohci1394.txt Doc: Change wikipedia's URL from http to https 2015-06-22 10:14:05 -06:00
dell_rbu.txt
devices.txt
digsig.txt
DMA-API-HOWTO.txt Documentation updates for 4.2 2015-06-24 20:01:36 -07:00
DMA-API.txt PCI: Add pci_bus_addr_t 2015-05-29 17:21:45 -05:00
DMA-attributes.txt
dma-buf-sharing.txt
DMA-ISA-LPC.txt
dontdiff
dynamic-debug-howto.txt
edac.txt EDAC: Update Documentation/edac.txt 2015-06-24 18:17:40 +02:00
efi-stub.txt
eisa.txt
email-clients.txt
flexible-arrays.txt
futex-requeue-pi.txt
gcov.txt
gdb-kernel-debugging.txt
highuid.txt
HOWTO
hsi.txt
hw_random.txt
hwspinlock.txt hwspinlock/core: add device tree support 2015-05-02 09:54:30 +03:00
init.txt
initrd.txt
intel_txt.txt
Intel-IOMMU.txt
io_ordering.txt
io-mapping.txt
iostats.txt
IPMI.txt ipmi:ssif: Ignore spaces when comparing I2C adapter names 2015-05-05 14:24:45 -05:00
IRQ-affinity.txt
IRQ-domain.txt
IRQ.txt
irqflags-tracing.txt
isapnp.txt
java.txt
kasan.txt Merge branch 'doc/4.2' into docs-next 2015-06-08 17:04:11 -06:00
kernel-doc-nano-HOWTO.txt
kernel-docs.txt
kernel-parameters.txt Additional ACPICA material for v4.2-rc1 2015-07-02 17:11:28 -07:00
kernel-per-CPU-kthreads.txt
kmemcheck.txt
kmemleak.txt Doc: Change wikipedia's URL from http to https 2015-06-22 10:14:05 -06:00
kobject.txt
kprobes.txt
kref.txt
kselftest.txt
ldm.txt
local_ops.txt
lockup-watchdogs.txt watchdog: add watchdog_cpumask sysctl to assist nohz 2015-06-24 17:49:40 -07:00
logo.gif
logo.txt
lzo.txt
magic-number.txt Documentation/magic-number: Remove SCC_MAGIC 2015-05-13 15:39:04 -04:00
mailbox.txt
Makefile
ManagementStyle
md-cluster.txt
md.txt doc:md: fix typo in md.txt. 2015-06-23 06:49:44 -06:00
media-framework.txt
memory-barriers.txt Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2015-06-22 14:54:22 -07:00
memory-hotplug.txt
module-signing.txt
mono.txt
nommu-mmap.txt
ntb.txt NTB: Rename Intel code names to platform names 2015-07-04 14:09:25 -04:00
numastat.txt
oops-tracing.txt
padata.txt
parport-lowlevel.txt
parport.txt
percpu-rw-semaphore.txt
phy.txt phy: core: Add devm_of_phy_get_by_index to phy-core 2015-05-11 21:42:23 +05:30
pi-futex.txt
pinctrl.txt pinctrl: move strict option to pinmux_ops 2015-05-06 14:45:19 +02:00
pnp.txt
preempt-locking.txt x86/fpu: Rename math_state_restore() to fpu__restore() 2015-05-19 15:47:18 +02:00
printk-formats.txt
pwm.txt
ramoops.txt
rbtree.txt
remoteproc.txt remoteproc: introduce rproc_get_by_phandle API 2015-06-16 21:12:52 +03:00
rfkill.txt
robust-futex-ABI.txt
robust-futexes.txt
rpmsg.txt
rtc.txt
SAK.txt
SecurityBugs
serial-console.txt
sgi-ioc4.txt
SM501.txt
smsc_ece1099.txt
sparse.txt
stable_api_nonsense.txt
stable_kernel_rules.txt stable: Update documentation to clarify preferred procedure 2015-05-22 09:38:56 -06:00
static-keys.txt
SubmitChecklist
SubmittingDrivers
SubmittingPatches SubmittingPatches: Clarify requirements for patches directed toward stable 2015-05-14 15:34:52 -04:00
svga.txt
sysfs-rules.txt
sysrq.txt
this_cpu_ops.txt
unaligned-memory-access.txt
unicode.txt
unshare.txt
vfio.txt vfio: powerpc/spapr: Support Dynamic DMA windows 2015-06-11 15:16:55 +10:00
VGA-softcursor.txt
vgaarbiter.txt
video-output.txt
vme_api.txt Documentation: mention vme_master_mmap() in VME API 2015-06-12 17:26:56 -07:00
volatile-considered-harmful.txt
workqueue.txt workqueue: fix trivial typo in Documentation/workqueue.txt 2015-05-05 09:50:38 -04:00
xillybus.txt
xz.txt
zorro.txt