Tejun Heo
8603e1b300
workqueue: fix hang involving racing cancel[_delayed]_work_sync()'s for PREEMPT_NONE
...
cancel[_delayed]_work_sync() are implemented using
__cancel_work_timer() which grabs the PENDING bit using
try_to_grab_pending() and then flushes the work item with PENDING set
to prevent the on-going execution of the work item from requeueing
itself.
try_to_grab_pending() can always grab PENDING bit without blocking
except when someone else is doing the above flushing during
cancelation. In that case, try_to_grab_pending() returns -ENOENT. In
this case, __cancel_work_timer() currently invokes flush_work(). The
assumption is that the completion of the work item is what the other
canceling task would be waiting for too and thus waiting for the same
condition and retrying should allow forward progress without excessive
busy looping
Unfortunately, this doesn't work if preemption is disabled or the
latter task has real time priority. Let's say task A just got woken
up from flush_work() by the completion of the target work item. If,
before task A starts executing, task B gets scheduled and invokes
__cancel_work_timer() on the same work item, its try_to_grab_pending()
will return -ENOENT as the work item is still being canceled by task A
and flush_work() will also immediately return false as the work item
is no longer executing. This puts task B in a busy loop possibly
preventing task A from executing and clearing the canceling state on
the work item leading to a hang.
task A task B worker
executing work
__cancel_work_timer()
try_to_grab_pending()
set work CANCELING
flush_work()
block for work completion
completion, wakes up A
__cancel_work_timer()
while (forever) {
try_to_grab_pending()
-ENOENT as work is being canceled
flush_work()
false as work is no longer executing
}
This patch removes the possible hang by updating __cancel_work_timer()
to explicitly wait for clearing of CANCELING rather than invoking
flush_work() after try_to_grab_pending() fails with -ENOENT.
Link: http://lkml.kernel.org/g/20150206171156.GA8942@axis.com
v3: bit_waitqueue() can't be used for work items defined in vmalloc
area. Switched to custom wake function which matches the target
work item and exclusive wait and wakeup.
v2: v1 used wake_up() on bit_waitqueue() which leads to NULL deref if
the target bit waitqueue has wait_bit_queue's on it. Use
DEFINE_WAIT_BIT() and __wake_up_bit() instead. Reported by Tomeu
Vizoso.
Signed-off-by: Tejun Heo <tj@kernel.org>
Reported-by: Rabin Vincent <rabin.vincent@axis.com>
Cc: Tomeu Vizoso <tomeu.vizoso@gmail.com>
Cc: stable@vger.kernel.org
Tested-by: Jesper Nilsson <jesper.nilsson@axis.com>
Tested-by: Rabin Vincent <rabin.vincent@axis.com>
2015-03-05 08:04:13 -05:00
..
amba
ARM: 8256/1: driver coamba: add device binding path 'driver_override'
2015-02-10 10:23:15 +00:00
bcma
bcma: implement host code support for PCIe Gen 2 devices
2015-01-29 10:54:43 +02:00
byteorder
can
ceph
libceph: tcp_nodelay support
2015-02-19 13:31:40 +03:00
clk
clk: omap: compile legacy omap3 clocks conditionally
2015-02-03 11:06:11 -08:00
crush
decompress
dma
extcon
fsl /bestcomm
gpio
hsi
i2c
iio
iio: core: Introduce IIO_CHAN_INFO_DEBOUNCE_COUNT and _TIME
2015-01-29 18:49:57 +00:00
input
Input: MT - add support for balanced slot assignment
2015-02-01 11:50:35 -08:00
irqchip
Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus
2015-02-21 19:41:38 -08:00
isdn
lockd
mfd
Changes to existing drivers:
2015-02-18 09:05:48 -08:00
mlx4
IB/mlx4: Reset flow support for IB kernel ULPs
2015-02-09 14:03:53 -08:00
mlx5
mmc
MMC core:
2015-02-11 10:56:48 -08:00
mtd
MTD updates for 3.20-rc1
2015-02-18 08:01:44 -08:00
netfilter
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
phy
SCSI misc on 20150209
2015-02-11 10:28:45 -08:00
pinctrl
platform_data
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
2015-02-21 12:59:04 -08:00
power
raid
regulator
Merge remote-tracking branches 'regulator/topic/max8649', 'regulator/topic/mode', 'regulator/topic/mt6397', 'regulator/topic/pfuze100' and 'regulator/topic/qcom-rpm' into regulator-next
2015-02-08 11:16:27 +08:00
rtc
rtc: add driver for DS1685 family of real time clocks
2015-02-16 17:56:05 -08:00
sched
soc /ti
spi
Merge remote-tracking branches 'spi/topic/orion', 'spi/topic/pxa2xx', 'spi/topic/qup', 'spi/topic/rockchip' and 'spi/topic/samsung' into spi-next
2015-02-08 11:16:55 +08:00
ssb
bcma: detect SPROM revision 11
2015-01-29 10:49:28 +02:00
sunrpc
Merge branch 'cleanups'
2015-02-18 07:28:37 -08:00
unaligned
usb
usb: patches for v3.20 merge window
2015-02-04 11:03:20 -08:00
uwb
wimax
8250_pci.h
a.out.h
acct.h
acpi.h
ACPI: Add interfaces to parse IOAPIC ID for IOAPIC hotplug
2015-02-05 15:09:26 +01:00
acpi_dma.h
acpi_pmtmr.h
adb.h
adfs_fs.h
aer.h
agp_backend.h
agpgart.h
ahci_platform.h
ata: ahci_platform: fix owner module reference mismatch for scsi host
2015-01-28 18:45:23 -05:00
aio.h
alarmtimer.h
altera_jtaguart.h
altera_uart.h
amd-iommu.h
amifd.h
amifdreg.h
amigaffs.h
anon_inodes.h
apm-emulation.h
apm_bios.h
apple_bl.h
arcdevice.h
arm-cci.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
ata: pata_platform: fix owner module reference mismatch for scsi host
2015-01-28 18:45:23 -05:00
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_serial.h
atmel_tc.h
atomic.h
attribute_container.h
audit.h
Merge branch 'getname2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2015-02-17 15:27:47 -08:00
auto_dev-ioctl.h
auto_fs.h
auxvec.h
average.h
b1pcmcia.h
backing-dev.h
Merge branch 'lazytime' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2015-02-17 16:12:34 -08:00
backlight.h
balloon_compaction.h
basic_mmio_gpio.h
bcd.h
bch.h
bcm47xx_wdt.h
watchdog: bcm47xx_wdt.c: add restart handler support
2015-02-17 21:33:27 +01:00
bfin_mac.h
binfmts.h
bio.h
block: merge __bio_map_user_iov into bio_map_user_iov
2015-02-05 09:30:43 -07:00
bit_spinlock.h
bitmap.h
bitmap, cpumask, nodemask: remove dedicated formatting functions
2015-02-13 21:21:39 -08:00
bitops.h
bitrev.h
blk-iopoll.h
blk-mq.h
Merge branch 'for-3.20/core' of git://git.kernel.dk/linux-block
2015-02-12 14:13:23 -08:00
blk_types.h
blkdev.h
block: remove unused function blk_bio_map_sg
2015-02-11 11:24:14 -07:00
blktrace_api.h
blockgroup_lock.h
bma150.h
bootmem.h
bottom_half.h
bpf.h
brcmphy.h
bsearch.h
bsg-lib.h
bsg.h
btree-128.h
btree-type.h
btree.h
btrfs.h
buffer_head.h
bug.h
c2port.h
cache.h
cacheinfo.h
capability.h
cb710.h
cciss_ioctl.h
ccp.h
cdev.h
cdrom.h
cfag12864b.h
cgroup.h
cgroup_subsys.h
circ_buf.h
cleancache.h
clk-provider.h
clk: Add __clk_hw_set_clk helper function
2015-02-18 09:40:07 -08:00
clk.h
clk: Add rate constraints to clocks
2015-02-02 14:23:42 -08:00
clkdev.h
clksrc-dbx500-prcmu.h
clock_cooling.h
clockchips.h
clocksource.h
cm4000_cs.h
cma.h
cmdline-parser.h
cn_proc.h
cnt32_to_63.h
coda.h
coda_psdev.h
com20020.h
compaction.h
mm/compaction: add tracepoint to observe behaviour of compaction defer
2015-02-11 17:06:04 -08:00
compat.h
compiler-clang.h
compiler-gcc.h
compiler: introduce __alias(symbol) shortcut
2015-02-13 21:21:40 -08:00
compiler-gcc3.h
compiler-gcc4.h
kasan: enable instrumentation of global variables
2015-02-13 21:21:42 -08:00
compiler-gcc5.h
kasan: enable instrumentation of global variables
2015-02-13 21:21:42 -08:00
compiler-intel.h
compiler.h
kernel: make READ_ONCE() valid on const arguments
2015-02-21 10:27:33 -08:00
completion.h
component.h
concap.h
configfs.h
connector.h
console.h
console_struct.h
consolemap.h
container.h
context_tracking.h
context_tracking_state.h
cordic.h
coredump.h
coresight.h
coresight: remove the unnecessary function coresight_is_bit_set()
2015-02-04 10:42:55 -08:00
cper.h
cpu.h
cpu_cooling.h
cpu_pm.h
cpu_rmap.h
cpufeature.h
cpufreq-dt.h
cpufreq.h
cpuidle.h
PM / sleep: Make it possible to quiesce timers during suspend-to-idle
2015-02-15 19:40:09 +01:00
cpumask.h
bitmap, cpumask, nodemask: remove dedicated formatting functions
2015-02-13 21:21:39 -08:00
cpuset.h
cputime.h
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
lib/halfmd4.c: simplify includes
2015-02-12 18:54:15 -08:00
cryptouser.h
cs5535.h
ctype.h
cuda.h
cyclades.h
davinci_emac.h
dca.h
dcache.h
VFS: Split DCACHE_FILE_TYPE into regular and special types
2015-02-22 11:38:38 -05:00
dccp.h
dcookies.h
debug_locks.h
debugfs.h
debugfs: Provide a file creation function that also takes an initial size
2015-02-17 12:21:51 -05:00
debugobjects.h
delay.h
delayacct.h
dell-led.h
devcoredump.h
devfreq-event.h
PM / devfreq: event: Add devfreq_event class
2015-01-30 17:56:40 +09:00
devfreq.h
device-mapper.h
dm: allocate requests in target when stacking on blk-mq devices
2015-02-09 13:06:47 -05:00
device.h
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-attrs.h
dma-buf.h
dma-contiguous.h
dma-debug.h
dma-direction.h
dma-mapping.h
dma_remapping.h
dmaengine.h
Merge branch 'topic/rcar' into for-linus
2015-02-02 16:55:43 -08:00
dmapool.h
dmar.h
dmi.h
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
ds1286.h
ds2782_battery.h
ds17287rtc.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
arm64 updates for 3.20:
2015-02-11 18:03:54 -08:00
efs_vh.h
eisa.h
elevator.h
elf-fdpic.h
elf.h
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
exportfs: add methods for block layout exports
2015-02-05 14:35:17 +01:00
ext2_fs.h
extcon.h
f2fs_fs.h
f2fs: introduce macros to convert bytes and blocks in f2fs
2015-02-11 17:04:48 -08:00
f75375s.h
falloc.h
fanotify.h
fault-inject.h
fb.h
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
fec.h
fence.h
file.h
filter.h
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
freezer.h
frontswap.h
fs.h
File locking related fixes for v3.20 (pile #2 )
2015-02-18 10:21:47 -08:00
fs_enet_pd.h
fs_pin.h
fs_stack.h
fs_struct.h
fs_uart_pd.h
fscache-cache.h
fscache.h
fsl-diu-fb.h
fsl_devices.h
fsl_hypervisor.h
fsl_ifc.h
fsldma.h
fsnotify.h
fsnotify: fix handling of renames in audit
2015-02-10 14:30:28 -08:00
fsnotify_backend.h
ftrace.h
ftrace_event.h
The updates included in this pull request for ftrace are:
2015-02-12 08:37:41 -08:00
ftrace_irq.h
futex.h
gameport.h
gcd.h
genalloc.h
genetlink.h
genhd.h
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h
mm/mempolicy.c: merge alloc_hugepage_vma to alloc_pages_vma
2015-02-11 17:06:04 -08:00
glob.h
goldfish.h
gpio-fan.h
gpio-pxa.h
gpio.h
gpio_keys.h
gpio_mouse.h
gsmmux.h
hardirq.h
hash.h
hashtable.h
hdlc.h
hdlcdrv.h
hdmi.h
[media] hdmi: rename HDMI_AUDIO_CODING_TYPE_EXT_STREAM to _EXT_CT
2015-01-27 10:19:12 -02:00
hid-debug.h
hid-roccat.h
hid-sensor-hub.h
hid-sensor-ids.h
hid.h
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
mm: numa: do not trap faults on the huge zero page
2015-02-12 18:54:08 -08:00
hugetlb.h
mm/hugetlb: take page table lock in follow_huge_pmd()
2015-02-11 17:06:01 -08:00
hugetlb_cgroup.h
hugetlb_inline.h
hw_breakpoint.h
hw_random.h
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hwspinlock.h
hyperv.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 'i2c/for-3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux
2015-02-21 12:41:50 -08: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_team.h
if_tun.h
if_tunnel.h
if_vlan.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2015-02-05 14:33:28 -08:00
igmp.h
ihex.h
ima.h
in.h
in6.h
inet.h
inet_diag.h
inet_lro.h
inetdevice.h
init.h
init_ohci1394_dma.h
init_task.h
kasan: enable stack instrumentation
2015-02-13 21:21:41 -08:00
initrd.h
inotify.h
input-polldev.h
input.h
integrity.h
intel-iommu.h
intel_mid_dma.h
intel_pmic_gpio.h
interrupt.h
interval_tree.h
interval_tree_generic.h
io-mapping.h
io.h
ioc3.h
ioc4.h
iocontext.h
iommu-helper.h
iommu.h
iopoll.h
ioport.h
ioprio.h
iova.h
ip.h
ipack.h
ipc.h
ipc_namespace.h
ipmi-fru.h
ipmi.h
ipmi_smi.h
ipv6.h
ipv6: pull cork initialization into its own function.
2015-02-02 19:28:04 -08:00
ipv6_route.h
irq.h
irq_cpustat.h
irq_work.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
jbd.h
jbd2.h
jbd_common.h
jhash.h
jiffies.h
journal-head.h
joystick.h
jump_label.h
jump_label_ratelimit.h
jz4740-adc.h
kallsyms.h
kasan.h
kasan: enable instrumentation of global variables
2015-02-13 21:21:42 -08:00
kbd_diacr.h
kbd_kern.h
kbuild.h
kconfig.h
kcore.h
kd.h
kdb.h
kdb: Avoid printing KERN_ levels to consoles
2015-02-19 12:39:02 -06:00
kdebug.h
kdev_t.h
kern_levels.h
kernel-page-flags.h
kernel.h
kernel.h: remove ancient __FUNCTION__ hack
2015-02-12 18:54:13 -08:00
kernel_stat.h
kernelcapi.h
kernfs.h
kernfs: remove KERNFS_STATIC_NAME
2015-02-13 21:21:36 -08:00
kexec.h
kexec: add IND_FLAGS macro
2015-02-17 14:34:51 -08:00
key-type.h
key.h
keyboard.h
kfifo.h
kgdb.h
khugepaged.h
klist.h
kmemcheck.h
kmemleak.h
kmod.h
kmsg_dump.h
kobj_map.h
kobject.h
kobject_ns.h
kprobes.h
kref.h
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h
kthread.h
ktime.h
kvm_host.h
Fairly small update, but there are some interesting new features.
2015-02-13 09:55:09 -08:00
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-pca9532.h
leds-regulator.h
leds-tca6507.h
leds.h
leds_pwm.h
lglock.h
lguest.h
lguest_launcher.h
lguest: remove NOTIFY call and eventfd facility.
2015-02-11 16:47:46 +10:30
libata.h
Merge branch 'for-3.20/drivers' of git://git.kernel.dk/linux-block
2015-02-12 14:30:53 -08:00
libfdt.h
libfdt_env.h
libps2.h
license.h
linkage.h
linux_logo.h
lis3lv02d.h
list.h
list_bl.h
list_lru.h
memcg: reparent list_lrus and free kmemcg_id on css offline
2015-02-12 18:54:10 -08:00
list_nulls.h
list_sort.h
livepatch.h
livepatch: rename config to CONFIG_LIVEPATCH
2015-02-04 11:25:51 +01:00
llc.h
llist.h
lockdep.h
lockref.h
log2.h
lp.h
lru_cache.h
lsm_audit.h
lz4.h
lzo.h
m48t86.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
mdio-bitbang.h
mdio-gpio.h
mdio-mux.h
mdio.h
mei_cl_bus.h
memblock.h
memcontrol.h
list_lru: introduce per-memcg lists
2015-02-12 18:54:09 -08:00
memory.h
memory_hotplug.h
mempolicy.h
mempool.h
memstick.h
mg_disk.h
mic_bus.h
micrel_phy.h
migrate.h
mm: numa: do not dereference pmd outside of the lock during NUMA hinting fault
2015-02-12 18:54:08 -08:00
migrate_mode.h
mii.h
miscdevice.h
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm.h
mm: allow page fault handlers to perform the COW
2015-02-16 17:56:03 -08:00
mm_inline.h
mm_types.h
mm: account pmd page tables to the process
2015-02-11 17:06:04 -08:00
mman.h
mmdebug.h
mmiotrace.h
mmu_context.h
mmu_notifier.h
mmzone.h
mm: microoptimize zonelist operations
2015-02-11 17:06:02 -08:00
mnt_namespace.h
mod_devicetable.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2015-02-17 17:41:19 -08:00
module.h
module: fix types of device tables aliases
2015-02-13 21:21:42 -08:00
moduleloader.h
moduleparam.h
mount.h
mpage.h
mpi.h
mpls.h
mroute.h
mroute6.h
msdos_fs.h
msg.h
msi.h
msm_mdp.h
mutex-debug.h
mutex.h
mutex: remove unused field "name" in debug mode
2015-02-14 11:32:59 -08:00
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
mvebu-pmsu.h
mxm-wmi.h
n_r3964.h
namei.h
nbd.h
net.h
netdev_features.h
netdev: introduce new NETIF_F_HW_SWITCH_OFFLOAD feature flag for switch device offloads
2015-02-01 23:16:33 -08:00
netdevice.h
net: Infrastructure for CHECKSUM_PARTIAL with remote checsum offload
2015-02-11 15:12:12 -08:00
netfilter.h
netfilter_bridge.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h
netpoll.h
nfs.h
nfs3.h
nfs4.h
Merge branch 'for-3.20' of git://linux-nfs.org/~bfields/linux
2015-02-12 10:39:41 -08:00
nfs_fs.h
NFSv4: Kill unused nfs_inode->delegation_state field
2015-02-13 21:40:27 -05:00
nfs_fs_i.h
nfs_fs_sb.h
nfsv3: introduce nfs3_set_ds_client
2015-02-03 11:06:34 -08:00
nfs_idmap.h
pnfs/flexfiles: Add the FlexFile Layout Driver
2015-02-03 11:06:52 -08:00
nfs_iostat.h
nfs_page.h
nfs: add mirroring support to pgio layer
2015-02-03 11:06:45 -08:00
nfs_xdr.h
NFSv4.1: Clean up bind_conn_to_session
2015-02-18 13:11:09 -08:00
nfsacl.h
nilfs2_fs.h
nl802154.h
nls.h
nmi.h
node.h
nodemask.h
bitmap, cpumask, nodemask: remove dedicated formatting functions
2015-02-13 21:21:39 -08:00
notifier.h
ns_common.h
nsc_gpio.h
nsproxy.h
ntb.h
nubus.h
numa.h
nvme.h
NVMe: Fix potential corruption during shutdown
2015-02-19 16:15:37 -07:00
nvram.h
nwpserial.h
nx842.h
of.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_mtd.h
of_net.h
of_pci.h
of_pdt.h
of_platform.h
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
oom.h
oom, PM: make OOM detection in the freezer path raceless
2015-02-11 17:06:03 -08:00
openvswitch.h
oprofile.h
osq_lock.h
oxu210hp.h
padata.h
page-flags-layout.h
page-flags.h
mm: add 'foreign' alias for the 'pinned' page flag
2015-01-28 14:03:09 +00:00
page-isolation.h
page_counter.h
mm: page_counter: pull "-1" handling out of page_counter_memparse()
2015-02-11 17:06:02 -08:00
page_ext.h
mm/page_owner.c: remove unnecessary stack_trace field
2015-02-11 17:06:07 -08:00
page_owner.h
pageblock-flags.h
pagemap.h
pagevec.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.h
pci.h
ACPI and power management updates for v3.20-rc1
2015-02-10 15:09:41 -08: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
Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2015-02-16 14:58:12 -08:00
perf_regs.h
personality.h
pfn.h
phonet.h
phy.h
phy_fixed.h
pid.h
pid_namespace.h
pim.h
pipe_fs_i.h
pktcdvd.h
pl320-ipc.h
platform_device.h
plist.h
pm.h
PM: Convert dev_pm_put_subsys_data() into a void function
2015-02-03 22:59:25 +01:00
pm2301_charger.h
pm_clock.h
pm_domain.h
PM / Domains: Eliminate the mutex for the generic_pm_domain_data
2015-02-03 22:56:53 +01:00
pm_opp.h
pm_qos.h
pm_runtime.h
pm_wakeup.h
pmu.h
pnfs_osd_xdr.h
pnp.h
PNP: Allow console to override ACPI device sleep
2015-02-02 10:11:25 -08:00
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
preempt.h
preempt_mask.h
prefetch.h
printk.h
hexdump: make it return number of bytes placed in buffer
2015-02-12 18:54:15 -08:00
proc_fs.h
proc_ns.h
profile.h
projid.h
property.h
proportions.h
pstore.h
pstore_ram.h
pti.h
ptp_classify.h
ptp_clock_kernel.h
ptrace.h
pvclock_gtod.h
pwm.h
pwm_backlight.h
pxa2xx_ssp.h
pxa168_eth.h
qnx6_fs.h
quicklist.h
quota.h
quota: Store maximum space limit in bytes
2015-01-30 12:51:21 +01:00
quotaops.h
quota: Add ->quota_{enable,disable} callbacks for VFS quotas
2015-01-30 12:50:32 +01:00
radix-tree.h
raid_class.h
ramfs.h
random.h
range.h
ras.h
ratelimit.h
rational.h
rbtree.h
lib/rbtree.c: fix typo in comment
2015-02-17 14:34:52 -08:00
rbtree_augmented.h
rculist.h
rculist_bl.h
rculist_nulls.h
rcupdate.h
rcutiny.h
rcutree.h
reboot.h
reciprocal_div.h
regmap.h
regmap: correct the description of structure element in reg_field
2015-01-27 13:13:04 +00:00
regset.h
relay.h
remoteproc.h
reservation.h
reset-controller.h
reset.h
resource.h
resource_ext.h
resources: Move struct resource_list_entry from ACPI into resource core
2015-02-05 15:09:25 +01:00
resume-trace.h
rfkill-gpio.h
rfkill-regulator.h
rfkill.h
rhashtable.h
rhashtable: Introduce rhashtable_walk_*
2015-02-04 20:34:52 -08:00
ring_buffer.h
rio.h
rio_drv.h
rio_ids.h
rio_regs.h
rmap.h
vfs: remove get_xip_mem
2015-02-16 17:56:03 -08:00
rndis.h
root_dev.h
rotary_encoder.h
rpmsg.h
rslib.h
rtc-ds2404.h
rtc-v3020.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
scatterlist.h
scc.h
sched.h
Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2015-02-21 10:40:02 -08:00
sched_clock.h
screen_info.h
sctp.h
scx200.h
scx200_gpio.h
sdb.h
sdla.h
seccomp.h
securebits.h
security.h
selection.h
selinux.h
sem.h
semaphore.h
seq_buf.h
bitmap, cpumask, nodemask: remove dedicated formatting functions
2015-02-13 21:21:39 -08:00
seq_file.h
bitmap, cpumask, nodemask: remove dedicated formatting functions
2015-02-13 21:21:39 -08:00
seq_file_net.h
seqlock.h
seqno-fence.h
serial.h
serial_8250.h
serial: 8250: Use canary to restart console after suspend
2015-02-02 10:11:27 -08:00
serial_bcm63xx.h
serial_core.h
serial: core: Rework hw-assisted flow control support
2015-02-02 10:11:28 -08:00
serial_max3100.h
serial_mfd.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
vmscan: per memory cgroup slab shrinkers
2015-02-12 18:54:09 -08:00
signal.h
signalfd.h
sirfsoc_dma.h
sizes.h
skbuff.h
net: Infrastructure for CHECKSUM_PARTIAL with remote checsum offload
2015-02-11 15:12:12 -08:00
slab.h
mm: slub: add kernel address sanitizer support for slub allocator
2015-02-13 21:21:41 -08:00
slab_def.h
slab: embed memcg_cache_params to kmem_cache
2015-02-12 18:54:09 -08:00
slub_def.h
mm: slub: share object_err function
2015-02-13 21:21:41 -08:00
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
smpboot.h
smsc911x.h
smscphy.h
sock_diag.h
socket.h
net: bury net/core/iovec.c - nothing in there is used anymore
2015-02-04 01:34:15 -05:00
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
srcu.h
ssbi.h
stackprotector.h
stacktrace.h
start_kernel.h
stat.h
statfs.h
static_key.h
stddef.h
ste_modem_shm.h
stmmac.h
stmp3xxx_rtc_wdt.h
stmp_device.h
stop_machine.h
string.h
mm/util: add kstrdup_const
2015-02-13 21:21:35 -08:00
string_helpers.h
libstring_helpers.c:string_get_size(): return void
2015-02-12 18:54:13 -08:00
stringify.h
sudmac.h
sungem_phy.h
sunserialcore.h
superhyway.h
suspend.h
PM / sleep: Re-implement suspend-to-idle handling
2015-02-13 23:49:36 +01:00
svga.h
swab.h
swap.h
swap: remove unused mem_cgroup_uncharge_swapcache declaration
2015-02-11 17:06:00 -08:00
swap_cgroup.h
swapfile.h
swapops.h
mm: remove remaining references to NUMA hinting bits and helpers
2015-02-12 18:54:08 -08:00
swiotlb.h
sxgbe_platform.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
tcp: mitigate ACK loops for connections as tcp_timewait_sock
2015-02-08 01:03:13 -08:00
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
thinkpad_acpi.h
thread_info.h
threads.h
ti_wilink_st.h
ti-st: clean up data types (fix harmless memory corruption)
2015-02-03 15:48:51 -08:00
tick.h
PM / sleep: Make it possible to quiesce timers during suspend-to-idle
2015-02-15 19:40:09 +01:00
tifm.h
timb_dma.h
timb_gpio.h
time.h
time64.h
timecounter.h
timekeeper_internal.h
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_clock.h
trace_seq.h
tracehook.h
tracepoint.h
tracing: Add condition check to RCU lockdep checks
2015-02-07 19:34:25 -05:00
transport_class.h
tsacct_kern.h
tty.h
tty: Remove external interface for tty_set_termios()
2015-02-02 10:11:28 -08:00
tty_driver.h
tty_flip.h
tty_ldisc.h
typecheck.h
types.h
linux/types.h: Always use unsigned long for pgoff_t
2015-02-12 18:54:13 -08:00
u64_stats_sync.h
uaccess.h
ucb1400.h
ucs2_string.h
udp.h
uidgid.h
uinput.h
uio.h
Merge branch 'iov_iter' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2015-02-17 15:48:33 -08:00
uio_driver.h
uprobes.h
usb.h
usb_usual.h
usbdevice_fs.h
user-return-notifier.h
user.h
user_namespace.h
uts.h
utsname.h
uuid.h
uwb.h
verify_pefile.h
vermagic.h
vexpress.h
vfio.h
vfio: Add and use device request op for vfio bus drivers
2015-02-10 12:37:47 -07:00
vfs.h
vga_switcheroo.h
vgaarb.h
via-core.h
via-gpio.h
via.h
via_i2c.h
videodev2.h
virtio.h
virtio_byteorder.h
virtio_caif.h
virtio_config.h
virtio_console.h
virtio_mmio.h
virtio_ring.h
vlynq.h
vm_event_item.h
vm_sockets.h
vmacache.h
vmalloc.h
mm: vmalloc: pass additional vm_flags to __vmalloc_node_range()
2015-02-13 21:21:42 -08:00
vme.h
vmpressure.h
vmstat.h
vmw_vmci_api.h
vmci: propagate msghdr all way down to __qp_memcpy_to_queue()
2015-02-04 01:34:14 -05:00
vmw_vmci_defs.h
vringh.h
vt.h
vt_buffer.h
vt_buffer: drop console buffer copying optimisations
2015-02-02 10:09:54 -08:00
vt_kern.h
vtime.h
w1-gpio.h
wait.h
Merge branch 'for-3.20/drivers' of git://git.kernel.dk/linux-block
2015-02-12 14:30:53 -08:00
wanrouter.h
watchdog.h
wireless.h
wl12xx.h
wm97xx.h
workqueue.h
workqueue: fix hang involving racing cancel[_delayed]_work_sync()'s for PREEMPT_NONE
2015-03-05 08:04:13 -05:00
writeback.h
ww_mutex.h
xattr.h
xz.h
yam.h
z2_battery.h
zbud.h
zconf.h
zlib.h
zorro.h
zpool.h
mm/zpool: add name argument to create zpool
2015-02-12 18:54:12 -08:00
zsmalloc.h
mm/zpool: add name argument to create zpool
2015-02-12 18:54:12 -08:00
zutil.h