twx-linux/include/linux
Peter Zijlstra 85f1abe001 kthread, sched/wait: Fix kthread_parkme() completion issue
Even with the wait-loop fixed, there is a further issue with
kthread_parkme(). Upon hotplug, when we do takedown_cpu(),
smpboot_park_threads() can return before all those threads are in fact
blocked, due to the placement of the complete() in __kthread_parkme().

When that happens, sched_cpu_dying() -> migrate_tasks() can end up
migrating such a still runnable task onto another CPU.

Normally the task will have hit schedule() and gone to sleep by the
time we do kthread_unpark(), which will then do __kthread_bind() to
re-bind the task to the correct CPU.

However, when we loose the initial TASK_PARKED store to the concurrent
wakeup issue described previously, do the complete(), get migrated, it
is possible to either:

 - observe kthread_unpark()'s clearing of SHOULD_PARK and terminate
   the park and set TASK_RUNNING, or

 - __kthread_bind()'s wait_task_inactive() to observe the competing
   TASK_RUNNING store.

Either way the WARN() in __kthread_bind() will trigger and fail to
correctly set the CPU affinity.

Fix this by only issuing the complete() when the kthread has scheduled
out. This does away with all the icky 'still running' nonsense.

The alternative is to promote TASK_PARKED to a special state, this
guarantees wait_task_inactive() cannot observe a 'stale' TASK_RUNNING
and we'll end up doing the right thing, but this preserves the whole
icky business of potentially migating the still runnable thing.

Reported-by: Gaurav Kohli <gkohli@codeaurora.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2018-05-03 07:38:05 +02:00
..
amba
avf
bcma
byteorder crypto: Deduplicate le32_to_cpu_array() and cpu_to_le32_array() 2018-03-31 01:33:09 +08:00
can
ceph ceph: quota: add initial infrastructure to support cephfs quotas 2018-04-02 11:17:51 +02:00
clk The large diff this time around is from the addition of a new clk driver 2018-04-13 15:51:06 -07:00
crush
decompress
dma
dsa
extcon
firmware/meson
fpga
fsl
gpio gpiolib: Support 'gpio-reserved-ranges' property 2018-03-27 15:34:20 +02:00
hsi
iio
input
irqchip Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2018-04-04 15:19:26 -07:00
isdn
lockd
mailbox
mfd Changes to chrome-platform for v4.17 2018-04-13 16:20:36 -07:00
mlx4
mlx5 Merge candidates for 4.17 merge window 2018-04-06 17:35:43 -07:00
mmc
mtd mtd: cfi: cmdset_0001: Do not allow read/write to suspend erase block. 2018-04-24 17:41:18 +02:00
mux
netfilter Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next 2018-03-30 11:41:18 -04:00
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
perf
phy
pinctrl
platform_data Changes to chrome-platform for v4.17 2018-04-13 16:20:36 -07:00
power
qed qed: Adapter flash update support. 2018-03-29 14:29:55 -04:00
raid powerpc updates for 4.17 2018-04-07 12:08:19 -07:00
regulator
remoteproc
reset
rpmsg
rtc
sched exec: pass stack rlimit into mm layout functions 2018-04-11 10:28:37 -07:00
soc remoteproc updates for v4.17 2018-04-10 12:09:27 -07:00
soundwire
spi
ssb
sunrpc NFS client updates for Linux 4.17 2018-04-12 12:55:50 -07:00
ulpi
unaligned
usb sound updates for 4.17-rc1 2018-04-05 10:42:07 -07:00
uwb
wimax
8250_pci.h
a.out.h
acct.h
acpi_dma.h
acpi_iort.h
acpi_pmtmr.h
acpi.h
adb.h
adfs_fs.h
aer.h
agp_backend.h
agpgart.h
ahci_platform.h
ahci-remap.h
aio.h
alarmtimer.h
altera_jtaguart.h
altera_uart.h
amd-iommu.h
amifd.h
amifdreg.h
anon_inodes.h
apm_bios.h
apm-emulation.h
apple_bl.h
apple-gmux.h
arch_topology.h
arm_sdei.h
arm-cci.h
arm-smccc.h
asn1_ber_bytecode.h
asn1_decoder.h
asn1.h
assoc_array_priv.h
assoc_array.h
async_tx.h
async.h
ata_platform.h
ata.h
atalk.h
ath9k_platform.h
atm_suni.h
atm_tcp.h
atm.h
atmdev.h
atmel_pdc.h
atmel_tc.h
atmel-mci.h
atmel-ssc.h
atomic.h
attribute_container.h
audit.h
auto_dev-ioctl.h
auto_fs.h
auxvec.h
average.h
b1pcmcia.h
backing-dev-defs.h writeback: safer lock nesting 2018-04-20 17:18:35 -07:00
backing-dev.h writeback: safer lock nesting 2018-04-20 17:18:35 -07:00
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
binfmts.h exec: pin stack limit during exec 2018-04-11 10:28:37 -07:00
bio.h
bit_spinlock.h
bitfield.h
bitmap.h bitmap: fix memset optimization on big-endian systems 2018-04-02 20:52:27 -07:00
bitops.h
bitrev.h
blk_types.h
blk-cgroup.h
blk-mq-pci.h blk-mq: Allow PCI vector offset for mapping queues 2018-03-27 21:25:36 -06:00
blk-mq-rdma.h
blk-mq-virtio.h
blk-mq.h block: mq: Add some minor doc for core structs 2018-04-25 07:58:18 -06:00
blkdev.h SCSI fixes on 20180425 2018-04-25 21:13:40 -07:00
blkpg.h
blktrace_api.h
blockgroup_lock.h
bma150.h
bootmem.h
bottom_half.h
bpf_trace.h
bpf_types.h bpf: Hooks for sys_bind 2018-03-31 02:15:18 +02:00
bpf_verifier.h bpf: Add bpf_verifier_vlog() and bpf_verifier_log_needed() 2018-03-26 09:58:17 +02:00
bpf-cgroup.h bpf: Post-hooks for sys_bind 2018-03-31 02:16:26 +02:00
bpf.h bpf/tracing: fix a deadlock in perf_event_detach_bpf_prog 2018-04-11 01:01:40 +02: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
build_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_rdma.h
cgroup_subsys.h
cgroup-defs.h Merge branch 'for-4.17' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq 2018-04-03 18:00:13 -07:00
cgroup.h
circ_buf.h
cleancache.h
clk-provider.h
clk.h
clkdev.h
clock_cooling.h
clockchips.h
clocksource.h
cm4000_cs.h
cma.h
cmdline-parser.h
cn_proc.h
cnt32_to_63.h
coda_psdev.h
coda.h
compaction.h
compat.h Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2018-04-15 16:12:35 -07:00
compiler_types.h
compiler-clang.h kasan: add no_sanitize attribute for clang builds 2018-04-20 17:18:35 -07:00
compiler-gcc.h task_struct: only use anon struct under randstruct plugin 2018-04-11 10:28:35 -07:00
compiler-intel.h
compiler.h
completion.h
component.h
concap.h
configfs.h
connector.h
console_struct.h
console.h
consolemap.h
const.h linux/const.h: move UL() macro to include/linux/const.h 2018-04-11 10:28:38 -07:00
container.h
context_tracking_state.h
context_tracking.h
cordic.h
coredump.h
coresight-pmu.h coresight: Move to SPDX identifier 2018-04-19 12:29:41 -03:00
coresight-stm.h
coresight.h
count_zeros.h
cper.h
cpu_cooling.h
cpu_pm.h
cpu_rmap.h
cpu.h
cpufeature.h
cpufreq.h cpufreq: Drop cpufreq_table_validate_and_show() 2018-04-10 08:40:45 +02:00
cpuhotplug.h
cpuidle.h cpuidle: Return nohz hint from cpuidle_select() 2018-04-06 09:29:34 +02:00
cpumask.h
cpuset.h
crash_core.h
crash_dump.h
crc4.h
crc7.h
crc8.h
crc16.h
crc32.h
crc32c.h libcrc32c: Add crc32c_impl function 2018-03-26 15:09:38 +02:00
crc-ccitt.h
crc-itu-t.h
crc-t10dif.h
cred.h
crypto.h
cryptohash.h
cs5535.h
ctype.h
cuda.h
cyclades.h
davinci_emac.h
dax.h dax, dm: allow device-mapper to operate without dax support 2018-04-03 05:41:19 -07:00
dca.h
dcache.h Merge branch 'old.dcache' into work.dcache 2018-04-04 00:40:19 -04:00
dccp.h
dcookies.h
debug_locks.h
debugfs.h
debugobjects.h
delay.h
delayacct.h
delayed_call.h
dell-led.h
devcoredump.h
devfreq_cooling.h
devfreq-event.h
devfreq.h
device_cgroup.h
device-mapper.h - DM core passthrough ioctl fix to retain reference to DM table, and 2018-04-06 11:50:19 -07:00
device.h drivers: change struct device_driver::coredump() return type to void 2018-04-19 09:48:32 +02:00
devpts_fs.h
digsig.h
dio.h
dirent.h
dlm_plock.h
dlm.h
dm9000.h
dm-bufio.h dm bufio: move dm-bufio.h to include/linux/ 2018-04-03 15:04:23 -04:00
dm-dirty-log.h
dm-io.h
dm-kcopyd.h
dm-region-hash.h
dma_remapping.h
dma-buf.h
dma-contiguous.h
dma-debug.h
dma-direct.h
dma-direction.h
dma-fence-array.h
dma-fence.h
dma-iommu.h
dma-mapping.h dma-mapping updates for 4.17: 2018-04-05 10:23:24 -07:00
dmaengine.h
dmapool.h
dmar.h
dmi.h * Add NVDIMM support to EDAC (Tony Luck) 2018-04-05 14:21:13 -07:00
dnotify.h
dns_resolver.h
dqblk_qtree.h
dqblk_v1.h
dqblk_v2.h
drbd_genl_api.h
drbd_genl.h
drbd_limits.h
drbd.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
elf-fdpic.h
elf-randomize.h
elf.h
elfcore-compat.h
elfcore.h
elfnote.h
enclosure.h
err.h
errno.h
error-injection.h
errqueue.h
errseq.h
etherdevice.h
ethtool.h net: ethtool: Add missing kernel doc for FEC parameters 2018-04-24 13:38:42 -04:00
eventfd.h
eventpoll.h
evm.h
export.h
exportfs.h
ext2_fs.h
extable.h
extcon-provider.h
extcon.h
f2fs_fs.h
f75375s.h
falloc.h
fanotify.h
fault-inject.h mm: make should_failslab always available for fault injection 2018-04-05 21:36:26 -07:00
fb.h fbdev: remove blackfin drivers 2018-03-26 15:56:44 +02:00
fbcon.h
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
fec.h
file.h
filter.h bpf: Hooks for sys_bind 2018-03-31 02:15:18 +02: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_enet_pd.h
fs_pin.h
fs_stack.h
fs_struct.h
fs_uart_pd.h
fs.h Merge branch 'work.thaw' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2018-04-12 12:28:32 -07:00
fscache-cache.h fscache: Pass object size in rather than calling back for it 2018-04-06 14:05:14 +01:00
fscache.h fscache: Maintain a catalogue of allocated cookies 2018-04-06 14:05:14 +01:00
fscrypt_notsupp.h
fscrypt_supp.h
fscrypt.h
fsi.h
fsl_devices.h
fsl_hypervisor.h
fsl_ifc.h
fsl-diu-fb.h
fsldma.h
fsnotify_backend.h \n 2018-04-25 21:23:38 -07:00
fsnotify.h
ftrace_irq.h
ftrace.h
futex.h mm: use do_futex() instead of sys_futex() in mm_release() 2018-04-02 20:15:02 +02:00
fwnode.h
gameport.h
gcd.h
genalloc.h
genetlink.h
genhd.h
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h
glob.h
goldfish.h
gpio_keys.h
gpio-pxa.h
gpio.h
hardirq.h
hash.h
hashtable.h
hdlc.h
hdlcdrv.h
hdmi.h
hid-debug.h
hid-roccat.h
hid-sensor-hub.h
hid-sensor-ids.h
hid.h HID: input: fix battery level reporting on BT mice 2018-04-09 09:26:12 +02:00
hiddev.h
hidraw.h
highmem.h
highuid.h
hil_mlc.h
hil.h
hippidevice.h
hmm.h mm/hmm: fix header file if/else/endif maze, again 2018-04-11 10:28:31 -07:00
host1x.h
hp_sdc.h
hpet.h
hrtimer.h Revert: Unify CLOCK_MONOTONIC and CLOCK_BOOTTIME 2018-04-26 14:53:32 +02:00
htcpld.h
huge_mm.h
hugetlb_cgroup.h
hugetlb_inline.h
hugetlb.h
hw_breakpoint.h
hw_random.h
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hwspinlock.h
hyperv.h ARM: 2018-04-09 11:42:31 -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.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
i8042.h
i8253.h
icmp.h
icmpv6.h
ide.h for-4.17/block-20180402 2018-04-05 14:27:02 -07:00
idr.h xarray: add the xa_lock to the radix_tree_root 2018-04-11 10:28:39 -07:00
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 reading memory beyond skb->tail in skb_vlan_tagged_multi 2018-04-17 13:59:28 -04:00
igmp.h
ihex.h
ima.h
imx-media.h
in6.h
in.h
inet_diag.h
inet.h net/utils: Introduce inet_addr_is_any 2018-03-26 08:53:43 -06:00
inetdevice.h
init_ohci1394_dma.h
init_task.h
init.h
initrd.h
inotify.h
input-polldev.h
input.h
integrity.h
intel-iommu.h
intel-pti.h
intel-svm.h
interrupt.h
interval_tree_generic.h
interval_tree.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
iopoll.h
ioport.h
ioprio.h
iova.h
ip.h
ipack.h
ipc_namespace.h
ipc.h ipc: Move IPCMNI from include/ipc.h into ipc/util.h 2018-03-24 11:25:36 -05:00
ipmi_smi.h
ipmi-fru.h
ipmi.h
ipv6_route.h
ipv6.h
irq_cpustat.h
irq_poll.h
irq_sim.h
irq_work.h
irq.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_divertif.h
isdn_ppp.h
isdn.h
isdnif.h
isicom.h
iversion.h
jbd2.h
jhash.h
jiffies.h jiffies: Introduce USER_TICK_USEC and redefine TICK_USEC 2018-04-06 09:28:50 +02:00
journal-head.h
joystick.h
jump_label_ratelimit.h
jump_label.h
jz4740-adc.h
jz4780-nemc.h
kallsyms.h
kasan-checks.h
kasan.h kasan: make kasan_cache_create() work with 32-bit slab cache sizes 2018-04-05 21:36:24 -07:00
kbd_diacr.h
kbd_kern.h
kbuild.h
kconfig.h kbuild: get <linux/compiler_types.h> out of <linux/kconfig.h> 2018-03-31 12:22:38 +09:00
kcore.h
kcov.h
kd.h
kdb.h
kdebug.h
kdev_t.h
kern_levels.h
kernel_stat.h
kernel-page-flags.h
kernel.h taint: add taint for randstruct 2018-04-11 10:28:35 -07:00
kernelcapi.h
kernfs.h
kexec.h kernel/kexec_file.c: allow archs to set purgatory load address 2018-04-13 17:10:28 -07:00
key-type.h
key.h
keyboard.h
kfifo.h include/linux/kfifo.h: fix comment 2018-04-11 10:28:38 -07:00
kgdb.h
khugepaged.h
klist.h
kmemleak.h
kmod.h
kmsg_dump.h
kobj_map.h
kobject_ns.h
kobject.h
kprobes.h
kref.h
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h
kthread.h kthread, sched/wait: Fix kthread_parkme() completion issue 2018-05-03 07:38:05 +02:00
ktime.h
kvm_host.h
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_pwm.h
leds-bd2802.h
leds-lp3944.h
leds-lp3952.h
leds-pca9532.h
leds-regulator.h
leds-tca6507.h
leds.h
libata.h
libfdt_env.h
libfdt.h
libgcc.h
libnvdimm.h libnvdimm: Add of_node to region and bus descriptors 2018-04-07 07:53:23 -07:00
libps2.h
license.h
lightnvm.h lightnvm: pblk: implement get log report chunk 2018-03-29 17:29:09 -06:00
linkage.h
linux_logo.h video/logo: remove obsolete logo files 2018-03-26 15:56:42 +02:00
lis3lv02d.h
list_bl.h
list_lru.h mm: make counting of list_lru_one::nr_items lockless 2018-04-05 21:36:27 -07:00
list_nulls.h
list_sort.h
list.h
livepatch.h livepatch: Allow to call a custom callback when freeing shadow variables 2018-04-17 13:42:48 +02:00
llc.h
llist.h
lockdep.h
lockref.h lockref: Add lockref_put_not_zero 2018-04-12 09:41:19 -07:00
log2.h
logic_pio.h
lp.h
lru_cache.h
lsm_audit.h
lsm_hooks.h Merge branch 'next-integrity' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security 2018-04-07 16:53:59 -07:00
lz4.h
lzo.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
mem_encrypt.h
memblock.h powerpc updates for 4.17 2018-04-07 12:08:19 -07:00
memcontrol.h mm: memcg: make sure memory.events is uptodate when waking pollers 2018-04-11 10:28:31 -07:00
memory_hotplug.h mm/cma: manage the memory of the CMA area by using the ZONE_MOVABLE 2018-04-11 10:28:32 -07:00
memory.h mm/memory_hotplug: optimize memory hotplug 2018-04-05 21:36:25 -07:00
mempolicy.h
mempool.h
memremap.h
memstick.h
mic_bus.h
micrel_phy.h
microchipphy.h lan78xx: PHY DSP registers initialization to address EEE link drop issues with long cables 2018-04-12 21:46:10 -04:00
migrate_mode.h
migrate.h mm: unclutter THP migration 2018-04-11 10:28:32 -07:00
mii.h
miscdevice.h
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm_inline.h
mm_types_task.h
mm_types.h mm: change return type to vm_fault_t 2018-04-05 21:36:27 -07:00
mm-arch-hooks.h
mm.h page cache: use xa_lock 2018-04-11 10:28:39 -07:00
mman.h
mmdebug.h include/linux/mmdebug.h: make VM_WARN* non-rvals 2018-04-05 21:36:27 -07:00
mmiotrace.h
mmu_context.h
mmu_notifier.h
mmzone.h mm/page_alloc: don't reserve ZONE_HIGHMEM for ZONE_MOVABLE request 2018-04-11 10:28:32 -07:00
mnt_namespace.h
mod_devicetable.h firmware: dmi_scan: Add DMI_OEM_STRING support to dmi_matches 2018-04-13 15:37:59 +02:00
module.h
moduleloader.h
moduleparam.h
mount.h
mpage.h
mpi.h
mpls_iptunnel.h
mpls.h
mroute6.h ip6mr: Add API for default_rule fib 2018-03-26 13:14:43 -04:00
mroute_base.h ip6mr: Add refcounting to mfc 2018-03-26 13:14:43 -04:00
mroute.h ip6mr: Add refcounting to mfc 2018-03-26 13:14:43 -04:00
msdos_fs.h
msg.h msg: Move struct msg_queue into ipc/msg.c 2018-03-24 11:25:35 -05:00
msi.h
mutex.h
mv643xx_eth.h
mv643xx_i2c.h
mv643xx.h
mvebu-pmsu.h
mxm-wmi.h
n_r3964.h
namei.h
nd.h
net_dim.h net/dim: Fix int overflow 2018-03-30 12:56:22 -04:00
net.h
netdev_features.h ethtool: enable Inline TLS in HW 2018-03-31 23:37:32 -04:00
netdevice.h sfp/phylink: move module EEPROM ethtool access into netdev core ethtool 2018-03-30 10:11:06 -04:00
netfilter_bridge.h
netfilter_defs.h
netfilter_ingress.h
netfilter_ipv4.h
netfilter_ipv6.h
netfilter.h
netlink.h
netpoll.h
nfs3.h
nfs4.h
nfs_fs_i.h
nfs_fs_sb.h
nfs_fs.h NFS: More fine grained attribute tracking 2018-04-10 16:06:22 -04:00
nfs_iostat.h
nfs_page.h
nfs_xdr.h NFS: Remove the unused return_delegation() callback 2018-04-10 16:06:22 -04:00
nfs.h
nfsacl.h
nl802154.h
nls.h
nmi.h
node.h mm/memory_hotplug: don't read nid from struct page during hotplug 2018-04-05 21:36:25 -07:00
nodemask.h
nospec.h
notifier.h
ns_common.h
nsc_gpio.h
nsproxy.h
ntb_transport.h
ntb.h
nubus.h
numa.h
nvme-fc-driver.h
nvme-fc.h
nvme-rdma.h
nvme.h
nvmem-consumer.h
nvmem-provider.h
nvram.h
of_address.h
of_device.h
of_dma.h
of_fdt.h
of_gpio.h
of_graph.h
of_iommu.h
of_irq.h
of_mdio.h
of_net.h of_net: Implement of_get_nvmem_mac_address helper 2018-03-30 10:40:18 -04:00
of_pci.h
of_pdt.h
of_platform.h
of_reserved_mem.h
of.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_counter.h
page_ext.h
page_idle.h
page_owner.h
page_ref.h mm/page_ref: use atomic_set_release in page_ref_unfreeze 2018-04-05 21:36:25 -07:00
page-flags-layout.h
page-flags.h mm: uninitialized struct page poisoning sanity checking 2018-04-05 21:36:25 -07:00
page-isolation.h mm, migrate: remove reason argument from new_page_t 2018-04-11 10:28:32 -07:00
pageblock-flags.h
pagemap.h page cache: use xa_lock 2018-04-11 10:28:39 -07:00
pagevec.h
parman.h
parport_pc.h
parport.h
parser.h
pata_arasan_cf_data.h
patchkey.h
path.h
pch_dma.h
pci_hotplug.h
pci_ids.h pci-v4.17-changes 2018-04-06 18:31:06 -07:00
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: endpoint: Make epc->ops->clear_bar()/pci_epc_clear_bar() take struct *epf_bar 2018-04-03 12:38:05 +01:00
pci-epf.h PCI: endpoint: Simplify epc->ops->set_bar()/pci_epc_set_bar() 2018-04-03 12:23:38 +01:00
pci.h pci-v4.17-changes 2018-04-06 18:31:06 -07:00
pda_power.h
pe.h
percpu_counter.h
percpu_ida.h
percpu-defs.h
percpu-refcount.h
percpu-rwsem.h
percpu.h
perf_event.h perf/x86/pt, coresight: Clean up address filter structure 2018-03-29 16:07:22 +02:00
perf_regs.h
personality.h
pfn_t.h
pfn.h
phonet.h
phy_fixed.h
phy_led_triggers.h
phy.h
phylink.h sfp/phylink: move module EEPROM ethtool access into netdev core ethtool 2018-03-30 10:11:06 -04:00
pid_namespace.h
pid.h
pim.h
pipe_fs_i.h
pkeys.h
pktcdvd.h
pl320-ipc.h
platform_device.h
plist.h
pm2301_charger.h
pm_clock.h
pm_domain.h
pm_opp.h
pm_qos.h
pm_runtime.h
pm_wakeirq.h
pm_wakeup.h
pm-trace.h
pm.h
pmbus.h
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h
poll.h
posix_acl_xattr.h
posix_acl.h
posix-clock.h
posix-timers.h
power_supply.h
powercap.h
ppp_channel.h
ppp_defs.h
ppp-comp.h
pps_kernel.h
pps-gpio.h
pr.h
preempt.h
prefetch.h
prime_numbers.h
printk.h
proc_fs.h
proc_ns.h
processor.h
profile.h
projid.h
property.h
psci.h
psp-sev.h
pstore_ram.h
pstore.h
pti.h
ptp_classify.h
ptp_clock_kernel.h
ptr_ring.h
ptrace.h
purgatory.h
pvclock_gtod.h
pwm_backlight.h
pwm.h
pxa2xx_ssp.h
pxa168_eth.h
qcom_scm.h
qnx6_fs.h
quicklist.h
quota.h quota: Kill an unused extern entry form quota.h 2018-03-26 13:11:35 +02:00
quotaops.h fs/quota: add kernel_quotactl() helper; remove in-kernel call to syscall 2018-04-02 20:15:46 +02:00
radix-tree.h xarray: add the xa_lock to the radix_tree_root 2018-04-11 10:28:39 -07:00
raid_class.h
ramfs.h
random.h
range.h
ras.h
ratelimit.h
rational.h
rbtree_augmented.h
rbtree_latch.h
rbtree.h
rcu_node_tree.h
rcu_segcblist.h
rcu_sync.h
rculist_bl.h
rculist_nulls.h
rculist.h
rcupdate_wait.h
rcupdate.h
rcutiny.h
rcutree.h
rcuwait.h
reboot-mode.h
reboot.h
reciprocal_div.h
refcount.h
regmap.h
regset.h
relay.h
remoteproc.h
reservation.h
reset-controller.h reset: modify the way reset lookup works for board files 2018-03-27 10:39:47 +02:00
reset.h
resource_ext.h
resource.h
restart_block.h
rfkill.h
rhashtable.h rhashtable: reorganize struct rhashtable layout 2018-03-31 23:25:39 -04:00
ring_buffer.h
rio_drv.h
rio_ids.h
rio_regs.h
rio.h
rmap.h
rmi.h
rndis.h
rodata_test.h
root_dev.h
rpmsg.h
rslib.h
rtc.h
rtmutex.h
rtnetlink.h net: Introduce net_rwsem to protect net_namespace_list 2018-03-29 13:47:53 -04:00
rtsx_common.h
rtsx_pci.h
rtsx_usb.h
rwlock_api_smp.h
rwlock_types.h
rwlock.h
rwsem-spinlock.h
rwsem.h
s3c_adc_battery.h
sa11x0-dma.h
sbitmap.h
scatterlist.h for-4.17/block-20180402 2018-04-05 14:27:02 -07:00
scc.h
sched_clock.h
sched.h sched/core: Force proper alignment of 'struct util_est' 2018-04-05 10:56:16 +02:00
scif.h
scmi_protocol.h
scpi_protocol.h
screen_info.h
sctp.h
scx200_gpio.h
scx200.h
sdb.h
sdla.h
seccomp.h
securebits.h
security.h Merge branch 'next-integrity' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security 2018-04-07 16:53:59 -07:00
sed-opal.h
seg6_genl.h
seg6_hmac.h
seg6_iptunnel.h
seg6_local.h
seg6.h
selection.h
selinux.h
sem.h
semaphore.h
seq_buf.h
seq_file_net.h
seq_file.h seq_file: allocate seq_file from kmem_cache 2018-04-11 10:28:36 -07:00
seqlock.h
seqno-fence.h
serdev.h
serial_8250.h
serial_bcm63xx.h
serial_core.h earlycon: Use a pointer table to fix __earlycon_table stride 2018-04-23 10:06:59 +02:00
serial_max3100.h
serial_pnx8xxx.h
serial_s3c.h
serial_sci.h
serial.h
serio.h
set_memory.h
sfi_acpi.h
sfi.h
sfp.h
sh_clk.h
sh_dma.h
sh_eth.h
sh_intc.h
sh_timer.h
sha256.h kernel/kexec_file.c: move purgatories sha256 to common code 2018-04-13 17:10:28 -07:00
shdma-base.h
shm.h ipc/shm: fix up for struct file no longer being available in shm.h 2018-03-28 13:29:57 -05:00
shmem_fs.h
shrinker.h mm,vmscan: Allow preallocating memory for register_shrinker(). 2018-04-16 02:06:47 -04:00
signal_types.h
signal.h
signalfd.h
siox.h
siphash.h
sirfsoc_dma.h
sizes.h
skb_array.h
skbuff.h inet: frags: get rid of ipfrag_skb_cb/FRAG_CB 2018-03-31 23:25:40 -04:00
slab_def.h slab: make usercopy region 32-bit 2018-04-05 21:36:24 -07:00
slab.h headers: untangle kmemleak.h from mm.h 2018-04-05 21:36:27 -07:00
slimbus.h
slub_def.h slub: make struct kmem_cache_order_objects::x unsigned int 2018-04-05 21:36:24 -07:00
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
smpboot.h
smsc911x.h
smscphy.h
sock_diag.h
socket.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2018-04-03 14:04:18 -07:00
sonet.h
sony-laptop.h
sonypi.h
sort.h
sound.h
soundcard.h
spinlock_api_smp.h
spinlock_api_up.h
spinlock_types_up.h
spinlock_types.h
spinlock_up.h
spinlock.h
splice.h
spmi.h
sram.h
srcu.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 stm class: Add SPDX GPL-2.0 header to replace GPLv2 boilerplate 2018-03-28 18:47:17 +03:00
stmmac.h
stmp3xxx_rtc_wdt.h
stmp_device.h
stop_machine.h
string_helpers.h
string.h
stringhash.h <linux/stringhash.h>: fix end_name_hash() for 64bit long 2018-04-28 15:01:14 -07:00
stringify.h
sudmac.h
sungem_phy.h
sunserialcore.h
sunxi-rsb.h
superhyway.h
suspend.h
svga.h
sw842.h
swab.h
swait.h
swap_cgroup.h
swap_slots.h
swap.h mm: swap: unify cluster-based and vma-based swap readahead 2018-04-05 21:36:25 -07:00
swapfile.h
swapops.h
swiotlb.h
switchtec.h
sxgbe_platform.h
sync_core.h
sync_file.h
synclink.h
sys_soc.h
sys.h
syscalls.h syscalls/core, syscalls/x86: Clean up syscall stub naming convention 2018-04-09 16:47:27 +02:00
syscore_ops.h
sysctl.h
sysfs.h
syslog.h
sysrq.h
sysv_fs.h
t10-pi.h
task_io_accounting_ops.h
task_io_accounting.h
task_work.h
taskstats_kern.h
tboot.h
tc.h
tca6416_keypad.h
tcp.h
tee_drv.h
textsearch_fsm.h
textsearch.h textsearch: fix kernel-doc warnings and add kernel-api section 2018-04-16 18:53:13 -04:00
tfrc.h
thermal.h thermal: Add cooling device's statistics in sysfs 2018-04-02 21:49:01 +08:00
thinkpad_acpi.h
thread_info.h fork: unconditionally clear stack on fork 2018-04-20 17:18:35 -07:00
threads.h
thunderbolt.h
ti_wilink_st.h
ti-emif-sram.h ARM: OMAP2+: Fix build when using split object directories 2018-04-18 10:07:13 -07:00
tick.h cpuidle: menu: Refine idle state selection for running tick 2018-04-09 11:54:56 +02:00
tifm.h
timb_dma.h
timb_gpio.h
time32.h
time64.h
time.h
timecounter.h
timekeeper_internal.h Revert: Unify CLOCK_MONOTONIC and CLOCK_BOOTTIME 2018-04-26 14:53:32 +02:00
timekeeping32.h timekeeping: Remove __current_kernel_time() 2018-04-17 17:18:05 +02:00
timekeeping.h Revert: Unify CLOCK_MONOTONIC and CLOCK_BOOTTIME 2018-04-26 14:53:32 +02:00
timer.h timers: Remove stale struct tvec_base forward declaration 2018-04-17 17:18:04 +02:00
timerfd.h
timeriomem-rng.h
timerqueue.h
timex.h
tnum.h
topology.h
torture.h
toshiba.h
tpm_command.h
tpm_eventlog.h
tpm.h
trace_clock.h
trace_events.h New features: 2018-04-10 11:27:30 -07:00
trace_seq.h
trace.h
tracefs.h
tracehook.h
tracepoint-defs.h bpf: introduce BPF_RAW_TRACEPOINT 2018-03-28 22:55:19 +02:00
tracepoint.h
transport_class.h
ts-nbus.h
tsacct_kern.h
tty_driver.h
tty_flip.h
tty_ldisc.h
tty.h tty: Don't call panic() at tty_ldisc_init() 2018-04-23 11:05:52 +02:00
typecheck.h
types.h
u64_stats_sync.h
uaccess.h
ucb1400.h
ucs2_string.h
udp.h
uidgid.h
uio_driver.h
uio.h
umh.h
uprobes.h
usb_usual.h
usb.h
usbdevice_fs.h
user_namespace.h
user-return-notifier.h
user.h
userfaultfd_k.h
util_macros.h
uts.h
utsname.h uts: create "struct uts_namespace" from kmem_cache 2018-04-11 10:28:35 -07:00
uuid.h
uwb.h
vbox_utils.h virt: vbox: Move declarations of vboxguest private functions to private header 2018-04-23 13:41:55 +02:00
verification.h
vermagic.h
vexpress.h
vfio.h
vfs.h
vga_switcheroo.h
vgaarb.h
via_i2c.h
via-core.h
via-gpio.h
via.h
videodev2.h
virtio_byteorder.h
virtio_caif.h
virtio_config.h
virtio_console.h
virtio_net.h
virtio_ring.h
virtio_vsock.h
virtio.h virtio: add ability to iterate over vqs 2018-04-25 20:33:19 +03:00
visorbus.h
vlynq.h
vm_event_item.h
vm_sockets.h
vmacache.h
vmalloc.h
vme.h
vmpressure.h
vmstat.h mm, vmscan, tracing: use pointer to reclaim_stat struct in trace event 2018-04-11 10:28:30 -07:00
vmw_vmci_api.h
vmw_vmci_defs.h
vringh.h
vt_buffer.h
vt_kern.h
vt.h
vtime.h
w1-gpio.h
w1.h
wait_bit.h
wait.h
wanrouter.h
watchdog.h
win_minmax.h
wireless.h
wkup_m3_ipc.h
wl12xx.h
wm97xx.h
wmi.h
workqueue.h Merge branch 'for-4.17' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq 2018-04-03 18:00:13 -07:00
writeback.h
ww_mutex.h
xarray.h xarray: add the xa_lock to the radix_tree_root 2018-04-11 10:28:39 -07:00
xattr.h
xxhash.h
xz.h
yam.h
z2_battery.h
zbud.h
zconf.h
zlib.h
zorro.h
zpool.h
zsmalloc.h zsmalloc: introduce zs_huge_class_size() 2018-04-05 21:36:26 -07:00
zstd.h
zutil.h