mirror-linux/include/linux
Dmitry Torokhov e8b95728f7 Input: uinput - avoid FF flush when destroying device
Normally, when input device supporting force feedback effects is being
destroyed, we try to "flush" currently playing effects, so that the
physical device does not continue vibrating (or executing other effects).
Unfortunately this does not work well for uinput as flushing of the effects
deadlocks with the destroy action:

- if device is being destroyed because the file descriptor is being closed,
  then there is noone to even service FF requests;

- if device is being destroyed because userspace sent UI_DEV_DESTROY,
  while theoretically it could be possible to service FF requests,
  userspace is unlikely to do so (they'd need to make sure FF handling
  happens on a separate thread) even if kernel solves the issue with FF
  ioctls deadlocking with UI_DEV_DESTROY ioctl on udev->mutex.

To avoid lockups like the one below, let's install a custom input device
flush handler, and avoid trying to flush force feedback effects when we
destroying the device, and instead rely on uinput to shut off the device
properly.

NMI watchdog: Watchdog detected hard LOCKUP on cpu 3
...
 <<EOE>>  [<ffffffff817a0307>] _raw_spin_lock_irqsave+0x37/0x40
 [<ffffffff810e633d>] complete+0x1d/0x50
 [<ffffffffa00ba08c>] uinput_request_done+0x3c/0x40 [uinput]
 [<ffffffffa00ba587>] uinput_request_submit.part.7+0x47/0xb0 [uinput]
 [<ffffffffa00bb62b>] uinput_dev_erase_effect+0x5b/0x76 [uinput]
 [<ffffffff815d91ad>] erase_effect+0xad/0xf0
 [<ffffffff815d929d>] flush_effects+0x4d/0x90
 [<ffffffff815d4cc0>] input_flush_device+0x40/0x60
 [<ffffffff815daf1c>] evdev_cleanup+0xac/0xc0
 [<ffffffff815daf5b>] evdev_disconnect+0x2b/0x60
 [<ffffffff815d74ac>] __input_unregister_device+0xac/0x150
 [<ffffffff815d75f7>] input_unregister_device+0x47/0x70
 [<ffffffffa00bac45>] uinput_destroy_device+0xb5/0xc0 [uinput]
 [<ffffffffa00bb2de>] uinput_ioctl_handler.isra.9+0x65e/0x740 [uinput]
 [<ffffffff811231ab>] ? do_futex+0x12b/0xad0
 [<ffffffffa00bb3f8>] uinput_ioctl+0x18/0x20 [uinput]
 [<ffffffff81241248>] do_vfs_ioctl+0x298/0x480
 [<ffffffff81337553>] ? security_file_ioctl+0x43/0x60
 [<ffffffff812414a9>] SyS_ioctl+0x79/0x90
 [<ffffffff817a04ee>] entry_SYSCALL_64_fastpath+0x12/0x71

Reported-by: Rodrigo Rivas Costa <rodrigorivascosta@gmail.com>
Reported-by: Clément VUCHENER <clement.vuchener@gmail.com>
Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=193741
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2017-09-21 16:31:22 -07:00
..
amba Merge branch 'topic/pl330' into for-linus 2017-05-04 16:08:52 +05:30
bcma scripts/spelling.txt: add regsiter -> register spelling mistake 2017-05-08 17:15:13 -07:00
byteorder
can
ceph libceph: use kbasename() and kill ceph_file_part() 2017-05-23 20:32:10 +02:00
clk
crush
decompress
dma
extcon
firmware/meson
fpga
fsl
gpio gpiolib: Add stubs for gpiod lookup table interface 2017-05-22 10:39:11 +02:00
hsi
i2c Linux 4.12-rc3 2017-05-29 19:54:21 -07:00
iio
input Input: sparse-keymap - remove sparse_keymap_free() 2017-05-29 20:02:01 -07:00
irqchip KVM: arm/arm64: Fix isues with GICv2 on GICv3 migration 2017-05-24 09:44:07 +02:00
isdn
lockd
mailbox
mfd pci-v4.12-changes 2017-05-08 19:03:25 -07:00
mlx4 net/mlx4: Fix the check in attaching steering rules 2017-06-04 23:10:05 -04:00
mlx5 net/mlx5: Define interface bits for fencing UMR wqe 2017-06-01 17:05:04 -04:00
mmc
mtd MTD updates for 4.12-rc1: 2017-05-11 10:44:22 -07:00
netfilter netfilter: xtables: zero padding in data_to_user 2017-05-15 12:51:38 +02:00
netfilter_arp
netfilter_bridge ebtables: arpreply: Add the standard target sanity check 2017-05-16 10:24:27 +02:00
netfilter_ipv4
netfilter_ipv6
perf
phy
pinctrl Revert "pinctrl: generic: Add bi-directional and output-enable" 2017-05-22 10:39:10 +02:00
platform_data Linux 4.12-rc3 2017-05-29 19:54:21 -07:00
power power: supply: max17042_battery: Add support for the STATUS property 2017-05-01 12:37:29 +02:00
qed qed*: Fix possible overflow for status block id field. 2017-05-04 12:31:02 -04:00
raid
regulator Merge remote-tracking branches 'regulator/topic/notifier', 'regulator/topic/pfuze100', 'regulator/topic/settle', 'regulator/topic/tps65132' and 'regulator/topic/twl6030' into regulator-next 2017-04-30 22:17:36 +09:00
remoteproc
reset
rpmsg
rtc
sched mm: introduce memalloc_noreclaim_{save,restore} 2017-05-08 17:15:15 -07:00
soc Renesas ARM Based SoC Fixes for v4.12 2017-05-10 15:33:45 +02:00
spi
ssb
sunrpc nfsd: Revert "nfsd: check for oversized NFSv2/v3 arguments" 2017-05-16 16:16:30 -04:00
ulpi
unaligned
usb cdc-ether: divorce initialisation with a filter reset and a generic method 2017-05-23 11:01:28 -04:00
uwb
wimax
8250_pci.h
a.out.h
acct.h
acpi.h IOMMU Updates for Linux v4.12 2017-05-09 15:15:47 -07:00
acpi_dma.h
acpi_iort.h IOMMU Updates for Linux v4.12 2017-05-09 15:15:47 -07:00
acpi_pmtmr.h
adb.h
adfs_fs.h
aer.h
agp_backend.h
agpgart.h
ahci-remap.h
ahci_platform.h
aio.h
alarmtimer.h
altera_jtaguart.h
altera_uart.h
amd-iommu.h
amifd.h
amifdreg.h
anon_inodes.h
apm-emulation.h
apm_bios.h
apple-gmux.h
apple_bl.h
arm-cci.h
arm-smccc.h
asn1.h
asn1_ber_bytecode.h
asn1_decoder.h
assoc_array.h
assoc_array_priv.h
async.h
async_tx.h
ata.h
ata_platform.h
atalk.h
ath9k_platform.h
atm.h
atm_suni.h
atm_tcp.h
atmdev.h
atmel-mci.h
atmel-ssc.h
atmel_pdc.h
atmel_tc.h
atomic.h
attribute_container.h
audit.h audit: Use timespec64 to represent audit timestamps 2017-05-02 10:16:05 -04:00
auto_dev-ioctl.h
auto_fs.h
auxvec.h
average.h
b1pcmcia.h
backing-dev-defs.h
backing-dev.h
backlight.h
badblocks.h
balloon_compaction.h
bcd.h
bch.h
bcm47xx_nvram.h
bcm47xx_sprom.h
bcm47xx_wdt.h
bcm963xx_nvram.h
bcm963xx_tag.h
bfin_mac.h
binfmts.h
bio.h block: provide bio_uninit() free freeing integrity/task associations 2017-06-28 15:30:13 -06:00
bit_spinlock.h
bitfield.h
bitmap.h
bitops.h
bitrev.h
blk-cgroup.h
blk-mq-pci.h
blk-mq-virtio.h
blk-mq.h blk-mq: remove blk_mq_abort_requeue_list() 2017-05-22 20:50:11 +02:00
blk_types.h
blkdev.h blk-mq: fix performance regression with shared tags 2017-06-21 10:17:49 -06:00
blkpg.h
blktrace_api.h
blockgroup_lock.h
bma150.h
bootmem.h
bottom_half.h
bpf-cgroup.h
bpf.h
bpf_trace.h
bpf_types.h
bpf_verifier.h bpf: Add strict alignment flag for BPF_PROG_LOAD. 2017-05-11 14:19:00 -04:00
brcmphy.h
bsearch.h
bsg-lib.h
bsg.h
btree-128.h
btree-type.h
btree.h
btrfs.h
buffer_head.h
bug.h
bvec.h
c2port.h
cache.h
cacheinfo.h
capability.h
cb710.h
cciss_ioctl.h
ccp.h
cdev.h
cdrom.h
cfag12864b.h
cgroup-defs.h cgroup: Prevent kill_css() from being called more than once 2017-05-17 16:58:32 -04:00
cgroup.h cpuset: consider dying css as offline 2017-05-24 12:43:30 -04:00
cgroup_rdma.h
cgroup_subsys.h
circ_buf.h
cleancache.h
clk-provider.h
clk.h
clkdev.h
clock_cooling.h
clockchips.h Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-05-01 16:15:18 -07:00
clocksource.h
cm4000_cs.h
cma.h
cmdline-parser.h
cn_proc.h
cnt32_to_63.h
coda.h
coda_psdev.h
compaction.h
compat.h Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security 2017-05-03 08:50:52 -07:00
compiler-clang.h compiler, clang: properly override 'inline' for clang 2017-06-11 15:51:56 -07:00
compiler-gcc.h
compiler-intel.h
compiler.h
completion.h
component.h
concap.h
configfs.h configfs: Introduce config_item_get_unless_zero() 2017-06-12 13:20:20 +02:00
connector.h
console.h
console_struct.h
consolemap.h
container.h
context_tracking.h
context_tracking_state.h
cordic.h
coredump.h
coresight-pmu.h
coresight-stm.h
coresight.h
count_zeros.h
cper.h
cpu.h
cpu_cooling.h
cpu_pm.h
cpu_rmap.h
cpufeature.h
cpufreq.h
cpuhotplug.h
cpuidle.h
cpumask.h cpumask: make "nr_cpumask_bits" unsigned 2017-05-08 17:15:11 -07:00
cpuset.h
crash_core.h ia64: reuse append_elf_note() and final_note() functions 2017-05-08 17:15:11 -07:00
crash_dump.h
crc-ccitt.h
crc-itu-t.h
crc-t10dif.h
crc7.h
crc8.h
crc16.h
crc32.h
crc32c.h
cred.h
crypto.h
cryptohash.h
cs5535.h
ctype.h
cuda.h
cyclades.h
davinci_emac.h
dax.h dax, xfs, ext4: compile out iomap-dax paths in the FS_DAX=n case 2017-05-13 17:52:16 -07:00
dca.h
dcache.h
dccp.h
dcookies.h
debug_locks.h
debugfs.h
debugobjects.h
delay.h
delayacct.h
delayed_call.h
dell-led.h
devcoredump.h
devfreq-event.h
devfreq.h
devfreq_cooling.h thermal: devfreq_cooling: add new interface for direct power read 2017-05-05 15:54:45 +08:00
device-mapper.h libnvdimm for 4.12 2017-05-05 18:49:20 -07:00
device.h driver core: add devm_device_add_group() and friends 2017-07-22 11:59:23 +02:00
device_cgroup.h
devpts_fs.h
digsig.h
dio.h
dirent.h
dlm.h
dlm_plock.h
dm-dirty-log.h
dm-io.h
dm-kcopyd.h
dm-region-hash.h
dm9000.h
dma-buf.h
dma-contiguous.h
dma-debug.h
dma-direction.h
dma-fence-array.h
dma-fence.h
dma-iommu.h iommu/dma: Fix function declaration 2017-05-30 11:25:45 +02:00
dma-mapping.h
dma_remapping.h
dmaengine.h
dmapool.h
dmar.h
dmi.h firmware: dmi_scan: Make dmi_walk and dmi_walk_early return real error codes 2017-06-15 13:46:00 +02:00
dnotify.h
dns_resolver.h
dqblk_qtree.h
dqblk_v1.h
dqblk_v2.h
drbd.h
drbd_genl.h
drbd_genl_api.h
drbd_limits.h
ds2782_battery.h
dtlk.h
dw_apb_timer.h
dynamic_debug.h
dynamic_queue_limits.h
earlycpio.h
ecryptfs.h
edac.h
edd.h
edma.h
eeprom_93cx6.h
eeprom_93xx46.h
efi-bgrt.h
efi.h
efs_vh.h
eisa.h
elevator.h elevator: fix truncation of icq_cache_name 2017-06-06 11:20:47 -06:00
elf-fdpic.h
elf-randomize.h
elf.h ia64: reuse append_elf_note() and final_note() functions 2017-05-08 17:15:11 -07:00
elfcore-compat.h
elfcore.h
elfnote.h
enclosure.h
err.h
errno.h
errqueue.h
etherdevice.h
ethtool.h
eventfd.h
eventpoll.h
evm.h
export.h
exportfs.h
ext2_fs.h
extable.h
extcon.h
f2fs_fs.h f2fs: introduce CP_TRIMMED_FLAG to avoid unneeded discard 2017-05-03 10:04:56 -07:00
f75375s.h
falloc.h
fanotify.h
fault-inject.h
fb.h
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
fec.h
file.h
filter.h bpf: add various verifier test cases 2017-05-25 13:44:28 -04:00
fips.h
firewire.h
firmware-map.h
firmware.h
fixp-arith.h
flat.h
flex_array.h
flex_proportions.h
fmc-sdb.h
fmc.h
font.h
frame.h
freezer.h
frontswap.h
fs.h time: delete current_fs_time() 2017-05-12 15:57:15 -07:00
fs_enet_pd.h
fs_pin.h
fs_stack.h
fs_struct.h
fs_uart_pd.h
fscache-cache.h
fscache.h
fscrypt_common.h fscrypt: remove fscrypt_symlink_data_len() 2017-04-30 01:26:34 -04:00
fscrypt_notsupp.h fscrypt: introduce helper function for filename matching 2017-05-04 11:44:37 -04:00
fscrypt_supp.h fscrypt: correct collision claim for digested names 2017-05-04 11:44:41 -04:00
fsi.h
fsl-diu-fb.h
fsl_devices.h
fsl_hypervisor.h
fsl_ifc.h
fsldma.h
fsnotify.h
fsnotify_backend.h
ftrace.h scripts/spelling.txt: add regsiter -> register spelling mistake 2017-05-08 17:15:13 -07:00
ftrace_irq.h
futex.h
fwnode.h
gameport.h
gcd.h
genalloc.h
genetlink.h
genhd.h
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h include/linux/gfp.h: fix ___GFP_NOLOCKDEP value 2017-06-02 15:07:37 -07:00
glob.h
goldfish.h
gpio-fan.h
gpio-pxa.h
gpio.h
gpio_keys.h
gpio_mouse.h
hardirq.h
hash.h
hashtable.h hashtable: remove repeated phrase from a comment 2017-06-30 13:49:53 -07:00
hdlc.h
hdlcdrv.h
hdmi.h
hid-debug.h
hid-roccat.h
hid-sensor-hub.h
hid-sensor-ids.h
hid.h Merge branches 'for-4.11/upstream-fixes', 'for-4.12/accutouch', 'for-4.12/cp2112', 'for-4.12/hid-core-null-state-handling', 'for-4.12/hiddev', 'for-4.12/i2c-hid', 'for-4.12/innomedia', 'for-4.12/logitech-hidpp-battery-power-supply', 'for-4.12/multitouch', 'for-4.12/nti', 'for-4.12/upstream' and 'for-4.12/wacom' into for-linus 2017-05-02 11:01:10 +02:00
hiddev.h
hidraw.h
highmem.h
highuid.h
hil.h
hil_mlc.h
hippidevice.h
host1x.h
hp_sdc.h
hpet.h
hrtimer.h
htcpld.h
htirq.h
huge_mm.h
hugetlb.h
hugetlb_cgroup.h
hugetlb_inline.h
hw_breakpoint.h
hw_random.h
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hwspinlock.h
hyperv.h char/misc patches for 4.12-rc1 2017-05-04 19:15:35 -07:00
hypervisor.h
i2c-algo-bit.h
i2c-algo-pca.h
i2c-algo-pcf.h
i2c-dev.h
i2c-gpio.h
i2c-mux-gpio.h
i2c-mux-pinctrl.h
i2c-mux.h
i2c-ocores.h
i2c-omap.h
i2c-pca-platform.h
i2c-pnx.h
i2c-pxa.h
i2c-smbus.h
i2c-xiic.h
i2c.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2017-05-03 12:38:20 -07:00
i7300_idle.h
i8042.h
i8253.h
icmp.h
icmpv6.h
ide.h
idr.h
ieee80211.h
ieee802154.h
if_arp.h
if_bridge.h
if_eql.h
if_ether.h
if_fddi.h
if_frad.h
if_link.h
if_ltalk.h
if_macvlan.h
if_phonet.h
if_pppol2tp.h
if_pppox.h
if_tap.h
if_team.h
if_tun.h
if_tunnel.h
if_vlan.h vlan: Fix tcp checksum offloads in Q-in-Q vlans 2017-05-24 16:27:14 -04:00
igmp.h
ihex.h
ima.h
in.h
in6.h
inet.h
inet_diag.h
inetdevice.h
init.h
init_ohci1394_dma.h
init_task.h Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security 2017-05-03 08:50:52 -07:00
initrd.h
inotify.h
input-polldev.h
input.h Input: uinput - avoid FF flush when destroying device 2017-09-21 16:31:22 -07:00
integrity.h
intel-iommu.h
intel-svm.h
interrupt.h
interval_tree.h
interval_tree_generic.h
io-64-nonatomic-hi-lo.h
io-64-nonatomic-lo-hi.h
io-mapping.h
io.h
ioc3.h
ioc4.h
iocontext.h
iomap.h
iommu-common.h
iommu-helper.h
iommu.h Merge branches 'arm/exynos', 'arm/omap', 'arm/rockchip', 'arm/mediatek', 'arm/smmu', 'arm/core', 'x86/vt-d', 'x86/amd' and 'core' into next 2017-05-04 18:06:17 +02:00
iopoll.h
ioport.h
ioprio.h
iova.h
ip.h
ipack.h
ipc.h sysv,ipc: cacheline align kern_ipc_perm 2017-05-08 17:15:12 -07:00
ipc_namespace.h
ipmi-fru.h
ipmi.h
ipmi_smi.h
ipv6.h
ipv6_route.h
irq.h
irq_cpustat.h
irq_poll.h
irq_work.h
irqbypass.h
irqchip.h
irqdesc.h
irqdomain.h
irqflags.h
irqhandler.h
irqnr.h
irqreturn.h
isa.h
isapnp.h
iscsi_boot_sysfs.h
iscsi_ibft.h
isdn.h
isdn_divertif.h
isdn_ppp.h
isdnif.h
isicom.h
jbd2.h jbd2: mark the transaction context with the scope GFP_NOFS context 2017-05-03 15:52:09 -07:00
jhash.h
jiffies.h frv: declare jiffies to be located in the .data section 2017-06-02 15:07:37 -07:00
journal-head.h
joystick.h
jump_label.h
jump_label_ratelimit.h
jz4740-adc.h
jz4780-nemc.h
kallsyms.h
kasan-checks.h
kasan.h
kbd_diacr.h
kbd_kern.h
kbuild.h
kconfig.h
kcore.h
kcov.h
kd.h
kdb.h
kdebug.h
kdev_t.h
kern_levels.h
kernel-page-flags.h
kernel.h Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2017-05-02 15:53:46 -07:00
kernel_stat.h
kernelcapi.h
kernfs.h
kexec.h crash: move crashkernel parsing and vmcore related code under CONFIG_CRASH_CORE 2017-05-08 17:15:11 -07:00
key-type.h
key.h KEYS: sanitize key structs before freeing 2017-06-09 13:29:48 +10:00
keyboard.h
kfifo.h
kgdb.h
khugepaged.h
klist.h
kmemcheck.h
kmemleak.h
kmod.h
kmsg_dump.h
kobj_map.h
kobject.h driver core: emit uevents when device is bound to a driver 2017-07-22 11:59:23 +02:00
kobject_ns.h
kprobes.h tracing/kprobes: Enforce kprobes teardown after testing 2017-05-17 21:50:27 -04:00
kref.h kref: remove WARN_ON for NULL release functions 2017-05-08 17:15:14 -07:00
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h mm: make rmap_walk() return void 2017-05-03 15:52:10 -07:00
kthread.h
ktime.h
kvm_host.h Second round of KVM Changes for v4.12: 2017-05-10 11:29:23 -07:00
kvm_irqfd.h
kvm_para.h
kvm_types.h
l2tp.h
lapb.h
latencytop.h
lcd.h
lcm.h
led-class-flash.h
led-lm3530.h
leds-bd2802.h
leds-lp3944.h
leds-lp3952.h
leds-pca9532.h
leds-regulator.h
leds-tca6507.h
leds.h
leds_pwm.h
lguest.h
lguest_launcher.h
libata.h
libfdt.h
libfdt_env.h
libnvdimm.h libnvdimm: convert NDD_ flags to use bitops, introduce NDD_LOCKED 2017-05-04 14:01:24 -07:00
libps2.h
license.h
lightnvm.h
linkage.h
linux_logo.h
lis3lv02d.h
list.h
list_bl.h
list_lru.h
list_nulls.h
list_sort.h
livepatch.h
llc.h
llist.h
lockdep.h
lockref.h
log2.h
lp.h
lru_cache.h
lsm_audit.h
lsm_hooks.h
lz4.h
lzo.h
mISDNdsp.h
mISDNhw.h
mISDNif.h
mailbox_client.h
mailbox_controller.h
maple.h
marvell_phy.h
math64.h
max17040_battery.h
mbcache.h
mbus.h
mc6821.h
mc146818rtc.h
mcb.h
mdev.h
mdio-bitbang.h
mdio-mux.h
mdio.h
mei_cl_bus.h
memblock.h mm: consider memblock reservations for deferred memory initialization sizing 2017-06-02 15:07:38 -07:00
memcontrol.h mm: memcontrol: use node page state naming scheme for memcg 2017-05-03 15:52:11 -07:00
memory.h
memory_hotplug.h
mempolicy.h
mempool.h
memremap.h
memstick.h
mic_bus.h
micrel_phy.h
microchipphy.h
migrate.h include/linux/migrate.h: add arg names to prototype 2017-05-03 15:52:10 -07:00
migrate_mode.h
mii.h
miscdevice.h
mm-arch-hooks.h
mm.h mm: larger stack guard gap, between vmas 2017-06-19 21:50:20 +08:00
mm_inline.h
mm_types.h
mm_types_task.h
mman.h
mmdebug.h
mmiotrace.h
mmu_context.h
mmu_notifier.h
mmzone.h mm: consider memblock reservations for deferred memory initialization sizing 2017-06-02 15:07:38 -07:00
mnt_namespace.h
mod_devicetable.h firmware: dmi: Add DMI_PRODUCT_FAMILY identification string 2017-05-23 10:04:41 +02:00
module.h Modules updates for v4.12 2017-05-03 19:12:27 -07:00
moduleloader.h
moduleparam.h moduleparam: fix doc: hwparam_irq configures an IRQ 2017-07-02 15:37:23 -07:00
mount.h
mpage.h
mpi.h
mpls.h
mpls_iptunnel.h
mroute.h
mroute6.h
msdos_fs.h
msg.h
msi.h
mutex.h
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
mvebu-pmsu.h
mxm-wmi.h
n_r3964.h
namei.h
nd.h libnvdimm: add an atomic vs process context flag to rw_bytes 2017-05-10 21:46:22 -07:00
net.h
netdev_features.h
netdevice.h net: update undefined ->ndo_change_mtu() comment 2017-06-14 15:14:51 -04:00
netfilter.h
netfilter_bridge.h
netfilter_defs.h
netfilter_ingress.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h xdp: use common helper for netlink extended ack reporting 2017-05-03 09:51:24 -04:00
netpoll.h
nfs.h
nfs3.h
nfs4.h
nfs_fs.h
nfs_fs_i.h
nfs_fs_sb.h NFS client updates for Linux 4.12 2017-05-10 13:03:38 -07:00
nfs_iostat.h
nfs_page.h
nfs_xdr.h NFS append COMMIT after synchronous COPY 2017-05-08 19:01:06 -04:00
nfsacl.h
nl802154.h
nls.h
nmi.h
node.h
nodemask.h
notifier.h
ns_common.h
nsc_gpio.h
nsproxy.h
ntb.h
ntb_transport.h
nubus.h
numa.h
nvme-fc-driver.h nvmet-fc: remove target cpu scheduling flag 2017-05-20 10:11:34 -06:00
nvme-fc.h
nvme-rdma.h
nvme.h
nvmem-consumer.h
nvmem-provider.h
nvram.h
of.h powerpc updates for 4.12 part 1. 2017-05-05 11:36:44 -07:00
of_address.h
of_device.h IOMMU Updates for Linux v4.12 2017-05-09 15:15:47 -07:00
of_dma.h
of_fdt.h of/fdt: introduce of_scan_flat_dt_subnodes and of_get_flat_dt_phandle 2017-05-09 22:55:58 +10:00
of_gpio.h
of_graph.h
of_iommu.h
of_irq.h Partially Revert "of: fix sparse warnings in fdt, irq, reserved mem, and resolver code" 2017-05-11 10:26:22 -05:00
of_mdio.h
of_net.h
of_pci.h
of_pdt.h
of_platform.h of/platform: Make of_platform_device_destroy globally visible 2017-05-22 18:01:46 +02:00
of_reserved_mem.h
oid_registry.h
olpc-ec.h
omap-dma.h
omap-dmaengine.h
omap-gpmc.h
omap-iommu.h
omap-mailbox.h
omapfb.h
once.h
oom.h
openvswitch.h
oprofile.h
osq_lock.h
oxu210hp.h
padata.h
page-flags-layout.h
page-flags.h
page-isolation.h mm, page_alloc: count movable pages when stealing from pageblock 2017-05-08 17:15:10 -07:00
page_counter.h
page_ext.h
page_idle.h
page_owner.h
page_ref.h
pageblock-flags.h
pagemap.h
pagevec.h
parman.h
parport.h
parport_pc.h
parser.h
pata_arasan_cf_data.h
patchkey.h
path.h
pch_dma.h
pci-acpi.h
pci-aspm.h
pci-ats.h
pci-dma-compat.h
pci-dma.h
pci-ecam.h
pci-ep-cfs.h
pci-epc.h
pci-epf.h
pci.h pci-v4.12-fixes-1 2017-05-26 10:51:18 -07:00
pci_hotplug.h
pci_ids.h
pcieport_if.h
pda_power.h
pe.h
percpu-defs.h
percpu-refcount.h
percpu-rwsem.h
percpu.h
percpu_counter.h
percpu_ida.h
perf_event.h
perf_regs.h
personality.h
pfn.h
pfn_t.h
phonet.h
phy.h
phy_fixed.h
phy_led_triggers.h
pid.h
pid_namespace.h
pim.h
pipe_fs_i.h
pkeys.h
pktcdvd.h
pl320-ipc.h
platform_device.h
plist.h
pm-trace.h
pm.h
pm2301_charger.h
pm_clock.h
pm_domain.h ARM: SoC driver updates 2017-05-09 10:01:15 -07:00
pm_opp.h
pm_qos.h
pm_runtime.h
pm_wakeirq.h
pm_wakeup.h PM / wakeup: Integrate mechanism to abort transitions in progress 2017-05-05 22:54:28 +02:00
pmem.h
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h
poll.h
posix-clock.h
posix-timers.h
posix_acl.h
posix_acl_xattr.h
power_supply.h
powercap.h
ppp-comp.h
ppp_channel.h
ppp_defs.h
pps-gpio.h
pps_kernel.h
pr.h
preempt.h
prefetch.h
prime_numbers.h
printk.h crash: move crashkernel parsing and vmcore related code under CONFIG_CRASH_CORE 2017-05-08 17:15:11 -07:00
proc_fs.h
proc_ns.h pidns: expose task pid_ns_for_children to userspace 2017-05-08 17:15:12 -07:00
profile.h
projid.h
property.h
psci.h
pstore.h
pstore_ram.h
pti.h
ptp_classify.h
ptp_clock_kernel.h
ptr_ring.h ptr_ring: batch ring zeroing 2017-05-09 16:43:23 +03:00
ptrace.h ptrace: Properly initialize ptracer_cred on fork 2017-05-23 07:40:44 -05:00
purgatory.h
pvclock_gtod.h
pwm.h
pwm_backlight.h
pxa2xx_ssp.h
pxa168_eth.h
qcom_scm.h
qnx6_fs.h
quicklist.h
quota.h
quotaops.h ext4: fix quota charging for shared xattr blocks 2017-05-24 18:24:07 -04:00
radix-tree.h
raid_class.h
ramfs.h
random.h
range.h
ras.h
ratelimit.h
rational.h
rbtree.h
rbtree_augmented.h
rbtree_latch.h
rcu_node_tree.h
rcu_segcblist.h srcu: Debloat the <linux/rcu_segcblist.h> header 2017-05-02 06:29:22 -07:00
rcu_sync.h
rculist.h
rculist_bl.h
rculist_nulls.h
rcupdate.h Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-05-10 10:30:46 -07:00
rcupdate_wait.h
rcutiny.h
rcutree.h
rcuwait.h
reboot.h
reciprocal_div.h
refcount.h
regmap.h
regset.h
relay.h
remoteproc.h
reservation.h
reset-controller.h
reset.h
resource.h
resource_ext.h
restart_block.h
rfkill.h
rhashtable.h rhashtable: compact struct rhashtable_params 2017-05-01 16:22:40 -04:00
ring_buffer.h ring-buffer: Return reader page back into existing ring buffer 2017-05-01 10:26:40 -04:00
rio.h
rio_drv.h
rio_ids.h
rio_regs.h
rmap.h mm: remove SWAP_[SUCCESS|AGAIN|FAIL] 2017-05-03 15:52:10 -07:00
rmi.h
rndis.h
rodata_test.h mm: remove rodata_test_data export, add pr_fmt 2017-05-03 15:52:09 -07:00
root_dev.h
rpmsg.h
rslib.h
rtc.h
rtmutex.h
rtnetlink.h
rwlock.h
rwlock_api_smp.h
rwlock_types.h
rwsem-spinlock.h
rwsem.h
rxrpc.h
s3c_adc_battery.h
sa11x0-dma.h
sbitmap.h
scatterlist.h
scc.h
sched.h Staging/IIO patches for 4.12-rc1 2017-05-05 18:16:23 -07:00
sched_clock.h
scif.h
scpi_protocol.h
screen_info.h
sctp.h
scx200.h
scx200_gpio.h
sdb.h
sdla.h
seccomp.h
securebits.h
security.h
sed-opal.h
seg6.h
seg6_genl.h
seg6_hmac.h
seg6_iptunnel.h
selection.h
selinux.h
sem.h sysv,ipc: cacheline align kern_ipc_perm 2017-05-08 17:15:12 -07:00
semaphore.h
seq_buf.h
seq_file.h
seq_file_net.h
seqlock.h
seqno-fence.h
serdev.h tty/serdev: add serdev registration interface 2017-05-18 17:38:24 +02:00
serial.h
serial_8250.h
serial_bcm63xx.h
serial_core.h
serial_max3100.h
serial_pnx8xxx.h
serial_s3c.h
serial_sci.h
serio.h
sfi.h
sfi_acpi.h
sh_clk.h
sh_dma.h
sh_eth.h
sh_intc.h
sh_timer.h
shdma-base.h
shm.h
shmem_fs.h
shrinker.h
signal.h
signal_types.h
signalfd.h
siphash.h
sirfsoc_dma.h
sizes.h
skb_array.h
skbuff.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2017-05-02 16:40:27 -07:00
slab.h
slab_def.h
slub_def.h slub: make sysfs file removal asynchronous 2017-06-23 16:15:55 -07:00
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
smpboot.h
smsc911x.h
smscphy.h
sock_diag.h
socket.h
sonet.h
sony-laptop.h
sonypi.h
sort.h
sound.h
soundcard.h
spinlock.h
spinlock_api_smp.h
spinlock_api_up.h
spinlock_types.h
spinlock_types_up.h
spinlock_up.h
splice.h
spmi.h
sram.h
srcu.h srcu: Allow use of Classic SRCU from both process and interrupt context 2017-06-08 08:25:19 -07:00
srcuclassic.h
srcutiny.h
srcutree.h
ssbi.h
stackdepot.h
stackprotector.h
stacktrace.h
start_kernel.h
stat.h
statfs.h
static_key.h
stddef.h
ste_modem_shm.h
stm.h
stmmac.h
stmp3xxx_rtc_wdt.h
stmp_device.h
stop_machine.h
string.h libnvdimm for 4.12 2017-05-05 18:49:20 -07:00
string_helpers.h
stringhash.h
stringify.h
sudmac.h
sungem_phy.h
sunserialcore.h
sunxi-rsb.h
superhyway.h
suspend.h Revert "ACPI / sleep: Ignore spurious SCI wakeups from suspend-to-idle" 2017-06-07 00:57:37 +02:00
svga.h
sw842.h
swab.h
swait.h
swap.h mm, swap: remove unused function prototype 2017-05-03 15:52:11 -07:00
swap_cgroup.h
swap_slots.h
swapfile.h
swapops.h
swiotlb.h
sxgbe_platform.h
sync_file.h
synclink.h
sys.h
sys_soc.h
syscalls.h
syscore_ops.h
sysctl.h
sysfs.h
syslog.h
sysrq.h
sysv_fs.h
t10-pi.h
task_io_accounting.h
task_io_accounting_ops.h
task_work.h
taskstats_kern.h
tboot.h
tc.h
tca6416_keypad.h
tcp.h
tee_drv.h
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
thinkpad_acpi.h
thread_info.h A couple hardened usercopy changes: 2017-05-02 10:45:15 -07:00
threads.h
ti_wilink_st.h
tick.h
tifm.h
timb_dma.h
timb_gpio.h
time.h time: delete CURRENT_TIME_SEC and CURRENT_TIME 2017-05-08 17:15:15 -07:00
time64.h
timecounter.h
timekeeper_internal.h time: Fix CLOCK_MONOTONIC_RAW sub-nanosecond accounting 2017-06-20 10:41:50 +02:00
timekeeping.h
timer.h
timerfd.h
timeriomem-rng.h
timerqueue.h
timex.h
topology.h
torture.h
toshiba.h
tpm.h
tpm_command.h
trace.h
trace_clock.h
trace_events.h
trace_seq.h
tracefs.h
tracehook.h
tracepoint-defs.h
tracepoint.h
transport_class.h
tsacct_kern.h
tty.h tty/serdev: add serdev registration interface 2017-05-18 17:38:24 +02:00
tty_driver.h
tty_flip.h
tty_ldisc.h
typecheck.h
types.h
u64_stats_sync.h
uaccess.h include/linux/uaccess.h: remove expensive WARN_ON in pagefault_disabled_dec 2017-05-08 17:15:14 -07:00
ucb1400.h
ucs2_string.h
udp.h
uidgid.h
uinput.h
uio.h
uio_driver.h
uprobes.h
usb.h
usb_usual.h
usbdevice_fs.h
user-return-notifier.h
user.h
user_namespace.h
userfaultfd_k.h
util_macros.h
uts.h
utsname.h
uuid.h
uwb.h
verification.h
vermagic.h
vexpress.h
vfio.h
vfs.h
vga_switcheroo.h
vgaarb.h
via-core.h
via-gpio.h
via.h
via_i2c.h
videodev2.h
virtio.h virtio: virtio_driver doc 2017-05-09 16:43:22 +03:00
virtio_byteorder.h
virtio_caif.h
virtio_config.h virtio: add context flag to find vqs 2017-05-02 23:41:43 +03:00
virtio_console.h
virtio_net.h
virtio_ring.h virtio: add context flag to find vqs 2017-05-02 23:41:43 +03:00
virtio_vsock.h
vlynq.h
vm_event_item.h mm: move MADV_FREE pages into LRU_INACTIVE_FILE list 2017-05-03 15:52:08 -07:00
vm_sockets.h
vmacache.h
vmalloc.h mm, vmalloc: fix vmalloc users tracking properly 2017-05-12 15:57:15 -07:00
vme.h
vmpressure.h
vmstat.h
vmw_vmci_api.h
vmw_vmci_defs.h
vringh.h
vt.h
vt_buffer.h
vt_kern.h
vtime.h
w1-gpio.h
wait.h
wanrouter.h
watchdog.h
win_minmax.h
wireless.h
wkup_m3_ipc.h
wl12xx.h
wm97xx.h
workqueue.h
writeback.h
ww_mutex.h
xattr.h
xz.h
yam.h
z2_battery.h
zbud.h
zconf.h
zlib.h
zorro.h
zpool.h
zsmalloc.h
zutil.h