Mel Gorman
d0164adc89
mm, page_alloc: distinguish between being unable to sleep, unwilling to sleep and avoiding waking kswapd
...
__GFP_WAIT has been used to identify atomic context in callers that hold
spinlocks or are in interrupts. They are expected to be high priority and
have access one of two watermarks lower than "min" which can be referred
to as the "atomic reserve". __GFP_HIGH users get access to the first
lower watermark and can be called the "high priority reserve".
Over time, callers had a requirement to not block when fallback options
were available. Some have abused __GFP_WAIT leading to a situation where
an optimisitic allocation with a fallback option can access atomic
reserves.
This patch uses __GFP_ATOMIC to identify callers that are truely atomic,
cannot sleep and have no alternative. High priority users continue to use
__GFP_HIGH. __GFP_DIRECT_RECLAIM identifies callers that can sleep and
are willing to enter direct reclaim. __GFP_KSWAPD_RECLAIM to identify
callers that want to wake kswapd for background reclaim. __GFP_WAIT is
redefined as a caller that is willing to enter direct reclaim and wake
kswapd for background reclaim.
This patch then converts a number of sites
o __GFP_ATOMIC is used by callers that are high priority and have memory
pools for those requests. GFP_ATOMIC uses this flag.
o Callers that have a limited mempool to guarantee forward progress clear
__GFP_DIRECT_RECLAIM but keep __GFP_KSWAPD_RECLAIM. bio allocations fall
into this category where kswapd will still be woken but atomic reserves
are not used as there is a one-entry mempool to guarantee progress.
o Callers that are checking if they are non-blocking should use the
helper gfpflags_allow_blocking() where possible. This is because
checking for __GFP_WAIT as was done historically now can trigger false
positives. Some exceptions like dm-crypt.c exist where the code intent
is clearer if __GFP_DIRECT_RECLAIM is used instead of the helper due to
flag manipulations.
o Callers that built their own GFP flags instead of starting with GFP_KERNEL
and friends now also need to specify __GFP_KSWAPD_RECLAIM.
The first key hazard to watch out for is callers that removed __GFP_WAIT
and was depending on access to atomic reserves for inconspicuous reasons.
In some cases it may be appropriate for them to use __GFP_HIGH.
The second key hazard is callers that assembled their own combination of
GFP flags instead of starting with something like GFP_KERNEL. They may
now wish to specify __GFP_KSWAPD_RECLAIM. It's almost certainly harmless
if it's missed in most cases as other activity will wake kswapd.
Signed-off-by: Mel Gorman <mgorman@techsingularity.net>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
Acked-by: Michal Hocko <mhocko@suse.com>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Cc: Christoph Lameter <cl@linux.com>
Cc: David Rientjes <rientjes@google.com>
Cc: Vitaly Wool <vitalywool@gmail.com>
Cc: Rik van Riel <riel@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2015-11-06 17:50:42 -08:00
..
amba
ARM: 8446/1: amba: Remove unused callbacks for legacy system PM
2015-10-19 17:08:32 +01:00
bcma
brcmfmac: Add support for the BCM4365 and BCM4366 PCIE devices.
2015-09-29 10:56:05 +03:00
byteorder
can
net/can: can_dropped_invalid_skb can be boolean
2015-10-09 07:49:01 -07:00
ceph
libceph: advertise support for keepalive2
2015-09-17 20:14:27 +03:00
clk
clk: at91: add generated clock driver
2015-10-01 12:48:11 -07:00
crush
decompress
dma
dmaengine: hsu: remove platform data
2015-10-17 21:22:08 -07:00
extcon
extcon: gpio: Fix minor coding style and remove the unused fields.
2015-09-30 19:22:50 +09:00
fpga
add FPGA manager core
2015-10-07 18:08:15 +01:00
fsl
powerpc/fsl: Move fsl_guts.h out of arch/powerpc
2015-10-21 18:05:50 -05:00
gpio
gpiolib: provide generic request/free implementations
2015-10-16 22:11:16 +02:00
hsi
i2c
iio
input
irqchip
Power management and ACPI updates for v4.4-rc1
2015-11-04 18:10:13 -08:00
isdn
lockd
mfd
- New Device Support
2015-11-06 10:23:50 -08:00
mlx4
net/mlx4_core: Replace VF zero mac with random mac in mlx4_core
2015-10-14 19:14:44 -07:00
mlx5
net/mlx5_core: Wait for FW readiness on startup
2015-10-14 19:14:43 -07:00
mmc
mmc: mmc: extend the mmc_send_tuning()
2015-10-27 10:38:41 +01:00
mtd
netfilter
net/nfnetlink: lockdep_nfnl_is_held can be boolean
2015-10-09 07:49:00 -07:00
netfilter_arp
inet netfilter: Remove hook from ip6t_do_table, arp_do_table, ipt_do_table
2015-09-18 21:57:43 +02:00
netfilter_bridge
netfilter: ebtables: Simplify the arguments to ebt_do_table
2015-09-18 21:57:35 +02:00
netfilter_ipv4
inet netfilter: Remove hook from ip6t_do_table, arp_do_table, ipt_do_table
2015-09-18 21:57:43 +02:00
netfilter_ipv6
inet netfilter: Remove hook from ip6t_do_table, arp_do_table, ipt_do_table
2015-09-18 21:57:43 +02:00
perf
phy
pinctrl
drivers/pinctrl: Add the concept of an "init" state
2015-10-27 11:24:23 +01:00
platform_data
TTY/Serial driver patches for 4.4-rc1
2015-11-04 21:35:12 -08:00
power
power: bq27xxx_battery: Add support for additional bq27xxx family devices
2015-09-23 17:15:27 +02:00
qed
qed: Add statistics support
2015-10-27 19:34:54 -07:00
raid
regulator
regulator: introduce min_dropout_uV
2015-10-16 17:57:33 +01:00
reset
rtc
sched
sched/deadline: Unify dl_time_before() usage
2015-09-23 09:51:25 +02:00
soc
spi
Merge remote-tracking branches 'spi/topic/omap-100k', 'spi/topic/omap-uwire', 'spi/topic/owner', 'spi/topic/pxa' and 'spi/topic/pxa2xx' into spi-next
2015-11-04 11:02:12 +00:00
ssb
sunrpc
SUNRPC: Ensure that we wait for connections to complete before retrying
2015-09-17 18:01:28 -04:00
ulpi
unaligned
usb
USB patches for 4.4-rc1
2015-11-04 21:26:27 -08:00
uwb
wimax
8250_pci.h
a.out.h
acct.h
acpi.h
Power management and ACPI updates for v4.4-rc1
2015-11-04 18:10:13 -08:00
acpi_dma.h
acpi_pmtmr.h
adb.h
adfs_fs.h
aer.h
agp_backend.h
agpgart.h
ahci_platform.h
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
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
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
atomic: remove all traces of READ_ONCE_CTRL() and atomic*_read_ctrl()
2015-11-03 17:22:17 -08:00
attribute_container.h
audit.h
audit: audit_string_contains_control can be boolean
2015-11-04 08:23:51 -05:00
auto_dev-ioctl.h
auto_fs.h
auxvec.h
average.h
b1pcmcia.h
backing-dev-defs.h
writeback: bdi_writeback iteration must not skip dying ones
2015-10-12 10:31:12 -06:00
backing-dev.h
Merge branch 'for-4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup
2015-11-05 14:51:32 -08:00
backlight.h
balloon_compaction.h
basic_mmio_gpio.h
bcd.h
bch.h
bcm47xx_nvram.h
bcm47xx_wdt.h
bfin_mac.h
binfmts.h
bio.h
bit_spinlock.h
bitmap.h
bitops.h
bitrev.h
blk-cgroup.h
blkcg: fix incorrect read/write sync/async stat accounting
2015-10-27 15:04:56 +09:00
blk-iopoll.h
blk-mq.h
block: generic request_queue reference counting
2015-10-21 14:43:41 -06:00
blk_types.h
blkdev.h
Merge branch 'for-4.4/reservations' of git://git.kernel.dk/linux-block
2015-11-04 21:01:27 -08:00
blktrace_api.h
blockgroup_lock.h
bma150.h
bootmem.h
bottom_half.h
bpf.h
bpf: add support for persistent maps/progs
2015-11-02 22:48:39 -05:00
brcmphy.h
net: phy: Broadcom Cygnus internal Etherent PHY driver
2015-10-08 04:45:52 -07:00
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-defs.h
cgroup: add cgroup_subsys->free() method and use it to fix pids controller
2015-10-15 16:41:53 -04:00
cgroup.h
cgroup: keep zombies associated with their original cgroups
2015-10-15 16:41:53 -04:00
cgroup_subsys.h
Merge branch 'for-4.3/blkcg' of git://git.kernel.dk/linux-block
2015-09-10 18:56:14 -07:00
circ_buf.h
cleancache.h
clk-provider.h
clk: Add clk_hw_is_enabled() for use by clk providers
2015-10-26 12:36:55 -07:00
clk.h
clkdev.h
clksrc-dbx500-prcmu.h
clock_cooling.h
clockchips.h
clockevents: Remove unused set_mode() callback
2015-09-14 11:00:55 +02:00
clocksource.h
clocksource: cosmetic: Drop OF 'dependency' from symbols
2015-10-01 02:18:39 +02:00
cm4000_cs.h
cma.h
mm: cma: fix incorrect type conversion for size during dma allocation
2015-10-23 17:55:10 +09:00
cmdline-parser.h
cn_proc.h
cnt32_to_63.h
coda.h
coda_psdev.h
compaction.h
mm, compaction: distinguish contended status in tracepoints
2015-11-05 19:34:48 -08:00
compat.h
compiler-clang.h
compiler-gcc.h
include/linux/compiler-gcc.h: hide assume_aligned attribute from sparse
2015-11-05 19:34:48 -08:00
compiler-intel.h
compiler.h
compiler.h: add support for function attribute assume_aligned
2015-11-05 19:34:48 -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: fixing typographical error
2015-10-07 17:54:09 +01:00
cper.h
cpu.h
cpu: Remove try_get_online_cpus()
2015-10-07 16:02:49 -07:00
cpu_cooling.h
cpu_pm.h
cpu_rmap.h
cpufeature.h
cpufreq-dt.h
cpufreq.h
cpufreq: create cpu/cpufreq/policyX directories
2015-10-28 09:21:12 +01:00
cpuidle.h
cpumask.h
cpuset.h
mm, page_alloc: remove unnecessary taking of a seqlock when cpusets are disabled
2015-11-06 17:50:42 -08:00
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
cs5535.h
ctype.h
cuda.h
cyclades.h
davinci_emac.h
dax.h
dca.h
dcache.h
dccp.h
net/dccp: dccp_list_has_service can be boolean
2015-10-09 07:49:02 -07:00
dcookies.h
debug_locks.h
debugfs.h
debugfs: Add debugfs_create_ulong()
2015-10-18 10:14:39 -07:00
debugobjects.h
delay.h
delayacct.h
dell-led.h
devcoredump.h
devfreq-event.h
devfreq.h
PM / devfreq: comments for get_dev_status usage updated
2015-09-11 14:23:29 +09:00
device-mapper.h
dm: refactor ioctl handling
2015-10-31 19:05:59 -04: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
mm: cma: fix incorrect type conversion for size during dma allocation
2015-10-23 17:55:10 +09:00
dma-debug.h
dma-direction.h
dma-iommu.h
iommu: Implement common IOMMU ops for DMA mapping
2015-10-15 16:41:04 +02:00
dma-mapping.h
dma_remapping.h
iommu/vt-d: Implement deferred invalidate for SVM
2015-10-15 13:22:35 +01:00
dmaengine.h
dma: Add support to program MIC x100 status descriptiors
2015-10-04 12:46:06 +01: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
driver core update for 4.4-rc1
2015-11-04 21:50:37 -08:00
edd.h
edma.h
eeprom_93cx6.h
eeprom_93xx46.h
efi-bgrt.h
efi.h
efi: Use correct type for struct efi_memory_map::phys_map
2015-10-28 12:28:06 +01:00
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
errqueue.h
etherdevice.h
ethtool.h
eventfd.h
eventpoll.h
evm.h
export.h
exportfs.h
ext2_fs.h
extcon.h
extcon: Modify the id and name of external connector
2015-10-16 08:30:09 +09:00
f2fs_fs.h
f75375s.h
falloc.h
fanotify.h
fault-inject.h
debugfs: Pass bool pointer to debugfs_create_bool()
2015-10-04 11:36:07 +01:00
fb.h
fb.h: Provide alternate screen_base pointer
2015-10-13 10:51:30 -07:00
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
vfs: Fix pathological performance case for __alloc_fd()
2015-10-31 16:12:10 -07:00
fec.h
fence.h
file.h
filter.h
bpf: fix cb access in socket filter programs
2015-10-11 04:40:05 -07: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
freezer.h
frontswap.h
fs.h
Merge branch 'akpm' (patches from Andrew)
2015-11-05 23:10:54 -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_backend.h
ftrace.h
ftrace_irq.h
futex.h
fwnode.h
Power management and ACPI updates for v4.4-rc1
2015-11-04 18:10:13 -08:00
gameport.h
gcd.h
genalloc.h
genetlink.h
net/netlink: lockdep_genl_is_held can be boolean
2015-10-09 07:48:59 -07:00
genhd.h
block: move blk_integrity to request_queue
2015-10-21 14:43:42 -06:00
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h
mm, page_alloc: distinguish between being unable to sleep, unwilling to sleep and avoiding waking kswapd
2015-11-06 17:50:42 -08: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
hdlc.h
hdlcdrv.h
hdmi.h
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
hugetlb.h
mm: hugetlb: proc: add HugetlbPages field to /proc/PID/status
2015-11-05 19:34:48 -08:00
hugetlb_cgroup.h
cgroup: replace cgroup_subsys->disabled tests with cgroup_subsys_enabled()
2015-09-18 11:56:28 -04:00
hugetlb_inline.h
hw_breakpoint.h
hw_random.h
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hwspinlock.h
hyperv.h
drivers/hv: share Hyper-V SynIC constants with userspace
2015-11-04 16:24:33 +01:00
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
i7300_idle.h
i8042.h
i8253.h
icmp.h
icmpv6.h
ide.h
idr.h
ieee80211.h
wireless: add WNM action frame categories
2015-10-13 10:34:46 +02:00
ieee802154.h
ieee802154: remove unnecessary includes
2015-09-24 20:42:37 +02:00
if_arp.h
if_bridge.h
bridge: define some min/max/default ageing time constants
2015-09-23 14:35:58 -07:00
if_eql.h
if_ether.h
if_fddi.h
if_frad.h
if_link.h
if_link: Add control trust VF
2015-10-23 05:44:28 -07:00
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
igmp.h
net/ipv4: Pass proto as u8 instead of u16 in ip_check_mc_rcu
2015-09-29 16:27:47 -07:00
ihex.h
ima.h
in.h
in6.h
inet.h
inet_diag.h
inet_lro.h
inetdevice.h
net/inetdevice: bad_mask can be boolean
2015-10-09 07:49:05 -07:00
init.h
init_ohci1394_dma.h
init_task.h
Merge branch 'for-4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup
2015-11-05 14:51:32 -08:00
initrd.h
inotify.h
input-polldev.h
input.h
integrity.h
intel-iommu.h
iommu/vt-d: Implement SVM_FLAG_PRIVATE_PASID to allocate unique PASIDs
2015-10-15 15:35:32 +01:00
intel-svm.h
iommu/vt-d: Expose struct svm_dev_ops without CONFIG_INTEL_IOMMU_SVM
2015-10-27 08:36:08 +09:00
intel_pmic_gpio.h
interrupt.h
genirq: Handle force threading of irqs with primary and thread handler
2015-09-22 12:39:57 +02:00
interval_tree.h
interval_tree_generic.h
io-mapping.h
io.h
ioc3.h
ioc4.h
iocontext.h
iommu-common.h
iommu-common: Fix error code used in iommu_tbl_range_{alloc,free}().
2015-11-04 11:30:57 -08:00
iommu-helper.h
iommu.h
iommu: Add generic_device_group() function
2015-10-22 00:00:49 +02:00
iopoll.h
ioport.h
ACPI/PCI: Enhance ACPI core to support sparse IO space
2015-10-16 22:18:51 +02:00
ioprio.h
iova.h
iommu: iova: Move iova cache management to the iova library
2015-10-04 12:46:06 +01:00
ip.h
ipack.h
ipc.h
ipc_namespace.h
ipmi-fru.h
ipmi.h
ipmi_smi.h
ipv6.h
ipv6: inet6_sk() should use sk_fullsock()
2015-10-05 02:45:25 -07:00
ipv6_route.h
irq.h
genirq: Add flag to force mask in disable_irq[_nosync]()
2015-10-11 11:33:42 +02:00
irq_cpustat.h
irq_work.h
irqbypass.h
virt: IRQ bypass manager
2015-10-01 15:06:43 +02:00
irqchip.h
irqchip / ACPI: Add probing infrastructure for ACPI-based irqchips
2015-10-01 02:18:38 +02:00
irqdesc.h
genirq: Remove irq argument from irq flow handlers
2015-09-16 15:47:51 +02:00
irqdomain.h
irqdomain: Documentation updates
2015-10-13 19:01:25 +02:00
irqflags.h
irqhandler.h
genirq: Remove irq argument from irq flow handlers
2015-09-16 15:47:51 +02:00
irqnr.h
irqreturn.h
Document that IRQ_NONE should be returned when IRQ not actually handled
2015-10-30 10:13:26 +01:00
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
jhash.h
jiffies.h
journal-head.h
joystick.h
jump_label.h
Merge branch 'for-4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup
2015-11-05 14:51:32 -08:00
jump_label_ratelimit.h
jz4740-adc.h
jz4780-nemc.h
kallsyms.h
kasan.h
kbd_diacr.h
kbd_kern.h
kbuild.h
kconfig.h
kcore.h
kd.h
kdb.h
kdebug.h
kdev_t.h
kern_levels.h
kernel-page-flags.h
kernel.h
kernel_stat.h
kernelcapi.h
kernfs.h
kexec.h
kexec: split kexec_load syscall from kexec core code
2015-09-10 13:29:01 -07:00
key-type.h
KEYS: Merge the type-specific data with the payload data
2015-10-21 15:18:36 +01:00
key.h
KEYS: Merge the type-specific data with the payload data
2015-10-21 15:18:36 +01:00
keyboard.h
kfifo.h
kgdb.h
khugepaged.h
klist.h
kmemcheck.h
kmemleak.h
kmod.h
kmod: use system_unbound_wq instead of khelper
2015-09-10 13:29:01 -07:00
kmsg_dump.h
kobj_map.h
kobject.h
kobject: explain what kobject's sd field is
2015-10-04 11:46:16 +01:00
kobject_ns.h
kprobes.h
kref.h
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h
kthread.h
ktime.h
kvm_host.h
KVM: x86: move kvm_set_irq_inatomic to legacy device assignment
2015-11-04 16:24:36 +01:00
kvm_irqfd.h
KVM: eventfd: add irq bypass consumer management
2015-10-01 15:06:46 +02: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
arcnet: com20020-pci: add led trigger support
2015-10-26 09:10:56 +01:00
leds_pwm.h
lglock.h
lguest.h
lguest_launcher.h
libata.h
ata: ahci: find eSATA ports and flag them as removable
2015-09-30 17:37:55 -04:00
libfdt.h
libfdt_env.h
libnvdimm.h
libps2.h
license.h
lightnvm.h
lightnvm: refactor phys addrs type to u64
2015-11-03 09:53:24 -07:00
linkage.h
linux_logo.h
lis3lv02d.h
list.h
rculist: Use WRITE_ONCE() when deleting from reader-visible list
2015-10-06 11:16:42 -07:00
list_bl.h
rculist: Use WRITE_ONCE() when deleting from reader-visible list
2015-10-06 11:16:42 -07:00
list_lru.h
list_nulls.h
rculist: Use WRITE_ONCE() when deleting from reader-visible list
2015-10-06 11:16:42 -07:00
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
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-mux.h
mdio.h
mei_cl_bus.h
mei: bus: use mei_cldev_ prefix for the API functions
2015-09-20 19:31:10 -07:00
memblock.h
mm/memblock: make memblock_remove_range() static
2015-11-05 19:34:48 -08:00
memcontrol.h
Merge branch 'akpm' (patches from Andrew)
2015-11-05 23:10:54 -08:00
memory.h
memory_hotplug.h
mm: memory hotplug with an existing resource
2015-10-23 14:19:58 +01:00
mempolicy.h
mempool.h
memstick.h
mg_disk.h
mic_bus.h
misc: mic: Remove COSM functionality from the MIC card driver
2015-10-04 12:46:06 +01:00
micrel_phy.h
microchipphy.h
migrate.h
migrate_mode.h
mii.h
miscdevice.h
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm-arch-hooks.h
mm.h
mm: introduce VM_LOCKONFAULT
2015-11-05 19:34:48 -08:00
mm_inline.h
mm_types.h
mm: hugetlb: proc: add HugetlbPages field to /proc/PID/status
2015-11-05 19:34:48 -08:00
mman.h
mmdebug.h
mmiotrace.h
mmu_context.h
mmu_notifier.h
mm: introduce idle page tracking
2015-09-10 13:29:01 -07:00
mmzone.h
mm, page_alloc: use masks and shifts when converting GFP flags to migrate types
2015-11-06 17:50:42 -08:00
mnt_namespace.h
mod_devicetable.h
mei: bus: add client protocol version to the device alias
2015-09-20 19:30:10 -07:00
module.h
moduleloader.h
moduleparam.h
mount.h
mpage.h
mpi.h
lib/mpi: clean unused SHA1_DIGEST_LENGTH
2015-10-20 22:10:45 +08:00
mpls.h
mpls_iptunnel.h
mroute.h
mroute6.h
msdos_fs.h
msg.h
msi.h
PCI/MSI: Allow the MSI domain to be device-specific
2015-10-16 13:07:16 +01:00
mutex-debug.h
mutex.h
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
mvebu-pmsu.h
mxm-wmi.h
n_r3964.h
tty: r3964: Replace/remove bogus tty lock use
2015-10-17 21:11:29 -07:00
namei.h
nd.h
net.h
net: move net_get_random_once to lib
2015-10-08 05:26:35 -07:00
netdev_features.h
net/core: fix for_each_netdev_feature
2015-11-03 11:29:57 -05:00
netdevice.h
Merge branch 'parisc-4.3-2' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux
2015-11-04 11:30:22 -08:00
netfilter.h
netfilter: turn NF_HOOK into an inline function
2015-10-16 18:45:36 +02:00
netfilter_bridge.h
netfilter: Pass net into okfn
2015-09-17 17:18:37 -07:00
netfilter_defs.h
netfilter_ingress.h
netfilter: Store net in nf_hook_state
2015-09-17 17:18:32 -07:00
netfilter_ipv4.h
ipv4: Pass struct net into ip_route_me_harder
2015-09-29 20:21:32 +02:00
netfilter_ipv6.h
ipv6: Pass struct net through ip6_fragment
2015-09-30 01:45:03 -05:00
netlink.h
netpoll.h
nfs.h
nfs3.h
nfs4.h
nfs_fs.h
nfs_fs_i.h
nfs_fs_sb.h
nfs_iostat.h
nfs_page.h
nfs_xdr.h
nfsacl.h
nilfs2_fs.h
nl802154.h
nls.h
nmi.h
kernel/watchdog.c: perform all-CPU backtrace in case of hard lockup
2015-11-05 19:34:48 -08:00
node.h
nodemask.h
notifier.h
ns_common.h
nsc_gpio.h
nsproxy.h
ntb.h
ntb_transport.h
nubus.h
numa.h
nvme.h
nvme: include <linux/types.ĥ> in <linux/nvme.h>
2015-10-09 10:40:37 -06:00
nvmem-consumer.h
nvmem-provider.h
nvram.h
nwpserial.h
of.h
of_address.h
of_device.h
of_dma.h
of_fdt.h
of_gpio.h
gpiolib: Add and use OF_GPIO_SINGLE_ENDED flag
2015-10-16 22:49:26 +02:00
of_graph.h
of_iommu.h
of_irq.h
of/irq: Use the msi-map property to provide device-specific MSI domain
2015-10-16 13:07:15 +01:00
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
ARM: OMAP1: fix incorrect INT_DMA_LCD
2015-10-28 10:05:58 -07:00
omap-dmaengine.h
omap-gpmc.h
omap-iommu.h
omap-mailbox.h
omapfb.h
once.h
once: make helper generic for calling functions once
2015-10-08 05:26:36 -07:00
oom.h
openvswitch.h
oprofile.h
osq_lock.h
oxu210hp.h
padata.h
page-flags-layout.h
page-flags.h
mm: optimize PageHighMem() check
2015-11-05 19:34:48 -08:00
page-isolation.h
page_counter.h
mm: page_counter: let page_counter_try_charge() return bool
2015-11-05 19:34:48 -08:00
page_ext.h
mm: introduce idle page tracking
2015-09-10 13:29:01 -07:00
page_idle.h
mm: introduce idle page tracking
2015-09-10 13:29:01 -07: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/ACPI: Add interface acpi_pci_root_create()
2015-10-16 22:18:51 +02:00
pci-aspm.h
pci-ats.h
pci-dma.h
pci.h
pci_hotplug.h
pci_ids.h
pcieport_if.h
pda_power.h
pe.h
percpu-defs.h
percpu-refcount.h
percpu-rwsem.h
locking/percpu-rwsem: Make use of the rcu_sync infrastructure
2015-10-06 11:25:31 -07:00
percpu.h
percpu_counter.h
percpu_ida.h
perf_event.h
perf/core: Drop PERF_EVENT_TXN
2015-09-13 11:27:30 +02:00
perf_regs.h
personality.h
pfn.h
phonet.h
phy.h
net: phy: Add nested variants of mdiobus read/write
2015-10-23 05:57:43 -07:00
phy_fixed.h
pid.h
pid_namespace.h
pim.h
pipe_fs_i.h
pktcdvd.h
pl320-ipc.h
platform_device.h
driver-core: platform: Provide helpers for multi-driver modules
2015-10-05 05:02:40 +01:00
plist.h
pm-trace.h
pm.h
PM / PCI / ACPI: Kick devices that might have been reset by firmware
2015-10-14 02:17:34 +02:00
pm2301_charger.h
pm_clock.h
pm_domain.h
PM / Domains: Merge measurements for PM QoS device latencies
2015-10-28 04:33:04 +01:00
pm_opp.h
PM / OPP: Prefix exported opp routines with dev_pm_opp_
2015-09-15 02:03:16 +02:00
pm_qos.h
pm_runtime.h
pm_wakeirq.h
pm_wakeup.h
pmem.h
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h
include/linux/poison.h: remove not-used poison pointer macros
2015-09-10 13:29:01 -07:00
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
ntp/pps: use y2038 safe types in pps_event_time
2015-10-01 09:59:16 -07:00
pr.h
block: add an API for Persistent Reservations
2015-10-21 14:46:56 -06:00
preempt.h
sched/core: Kill PREEMPT_ACTIVE
2015-10-06 17:08:19 +02:00
prefetch.h
printk.h
hexdump: do not print debug dumps for !CONFIG_DEBUG
2015-09-10 13:29:01 -07:00
proc_fs.h
proc_ns.h
profile.h
projid.h
property.h
device property: Add fwnode_property_match_string()
2015-09-25 02:00:19 +02:00
proportions.h
psci.h
pstore.h
pstore: add pstore unregister
2015-10-22 08:59:18 -07:00
pstore_ram.h
pti.h
ptp_classify.h
ptp: Change ptp_class to a proper bitmask
2015-11-03 11:08:22 -05:00
ptp_clock_kernel.h
ptrace.h
pvclock_gtod.h
pwm.h
pwm_backlight.h
pxa2xx_ssp.h
spi: pxa2xx: Add support for Intel Broxton
2015-10-30 11:18:05 +09:00
pxa168_eth.h
qcom_scm.h
qnx6_fs.h
quicklist.h
quota.h
quotaops.h
radix-tree.h
raid_class.h
ramfs.h
random.h
random32: add prandom_init_once helper for own rngs
2015-10-08 05:26:38 -07:00
range.h
ras.h
ratelimit.h
rational.h
rbtree.h
rbtree_augmented.h
rbtree_latch.h
rcu_sync.h
rcu_sync: Cleanup the CONFIG_PROVE_RCU checks
2015-10-06 11:25:45 -07:00
rculist.h
rculist: Make list_entry_rcu() use lockless_dereference()
2015-10-06 11:16:18 -07:00
rculist_bl.h
rculist_nulls.h
rcupdate.h
rcu: Remove deprecated rcu_lockdep_assert()
2015-10-06 11:16:31 -07:00
rcutiny.h
rcu: Don't disable preemption for Tiny and Tree RCU readers
2015-10-06 11:08:23 -07:00
rcutree.h
rcu: Use rcu_callback_t in call_rcu*() and friends
2015-10-06 11:08:05 -07:00
reboot.h
reciprocal_div.h
regmap.h
Merge remote-tracking branches 'regmap/topic/atomic', 'regmap/topic/debugfs' and 'regmap/topic/irq-hdr' into regmap-next
2015-10-12 19:25:07 +01:00
regset.h
relay.h
remoteproc.h
reservation.h
reset-controller.h
reset.h
resource.h
resource_ext.h
rfkill-gpio.h
rfkill-regulator.h
rfkill.h
rhashtable.h
ring_buffer.h
rio.h
rio_drv.h
rio_ids.h
rio_regs.h
rmap.h
rndis.h
root_dev.h
rotary_encoder.h
rpmsg.h
rslib.h
rtc-ds2404.h
rtc-v3020.h
rtc.h
rtmutex.h
rtnetlink.h
net/core: lockdep_rtnl_is_held can be boolean
2015-10-09 07:49:06 -07:00
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 'akpm' (patches from Andrew)
2015-11-05 23:10:54 -08:00
sched_clock.h
scif.h
misc: mic: SCIF RMA header file and IOCTL changes
2015-10-04 12:54:54 +01:00
screen_info.h
sctp.h
scx200.h
scx200_gpio.h
sdb.h
sdla.h
seccomp.h
seccomp, ptrace: add support for dumping seccomp filters
2015-10-27 19:55:13 -07:00
securebits.h
security.h
security: fix typo in security_task_prctl
2015-09-20 17:00:26 -07:00
selection.h
selinux.h
sem.h
semaphore.h
seq_buf.h
seq_file.h
fs/seq_file: convert int seq_vprint/seq_printf/etc... returns to void
2015-09-11 15:21:34 -07:00
seq_file_net.h
seqlock.h
seqno-fence.h
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
signalfd.h
sirfsoc_dma.h
sizes.h
skbuff.h
mm, page_alloc: distinguish between being unable to sleep, unwilling to sleep and avoiding waking kswapd
2015-11-06 17:50:42 -08:00
slab.h
slab: convert slab_is_available() to boolean
2015-11-05 19:34:48 -08:00
slab_def.h
slub_def.h
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
smpboot.h
stop_machine: Kill smp_hotplug_thread->pre_unpark, introduce stop_machine_unpark()
2015-10-20 10:23:55 +02:00
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
spmi: Auto-populate driver.owner in spmi_driver_register()
2015-09-20 19:32:02 -07:00
srcu.h
rcu: Move preemption disabling out of __srcu_read_lock()
2015-10-06 11:15:43 -07:00
ssbi.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: Introduce an abstraction for System Trace Module devices
2015-10-04 20:28:58 +01:00
stmmac.h
stmp3xxx_rtc_wdt.h
stmp_device.h
stop_machine.h
stop_machine: Kill smp_hotplug_thread->pre_unpark, introduce stop_machine_unpark()
2015-10-20 10:23:55 +02:00
string.h
string: provide strscpy()
2015-09-10 15:36:59 -04:00
string_helpers.h
lib/string_helpers: rename "esc" arg to "only"
2015-09-10 13:29:01 -07:00
stringify.h
sudmac.h
sungem_phy.h
sunserialcore.h
superhyway.h
suspend.h
PM / sleep: Add flags to indicate platform firmware involvement
2015-10-14 02:17:33 +02:00
svga.h
sw842.h
swab.h
swap.h
swap_cgroup.h
swapfile.h
swapops.h
swiotlb.h
sxgbe_platform.h
synclink.h
sys.h
sys_soc.h
syscalls.h
mm: mlock: add new mlock system call
2015-11-05 19:34:48 -08:00
syscore_ops.h
sysctl.h
sysfs.h
sysfs: added __compat_only_sysfs_link_entry_to_kobj()
2015-10-19 01:01:19 +02:00
syslog.h
sysrq.h
sysv_fs.h
t10-pi.h
block: Consolidate static integrity profile properties
2015-10-21 14:42:38 -06:00
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: fastopen: limit max_qlen
2015-10-22 06:22:13 -07:00
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
thermal: Add a function to get the minimum power
2015-09-14 07:39:46 -07:00
thinkpad_acpi.h
thread_info.h
threads.h
ti_wilink_st.h
ti-st: use worker instead of calling st_int_write in wake up
2015-09-20 22:52:13 -07:00
tick.h
tifm.h
timb_dma.h
timb_gpio.h
time.h
time64.h
timecounter.h
timekeeper_internal.h
timekeeping.h
ntp/pps: replace getnstime_raw_and_real with 64-bit version
2015-10-01 09:59:01 -07:00
timer.h
timerfd.h
timeriomem-rng.h
timerqueue.h
timex.h
ntp/pps: use timespec64 for hardpps()
2015-10-01 09:57:59 -07:00
topology.h
torture.h
toshiba.h
tpm.h
tpm: seal/unseal for TPM 2.0
2015-10-19 01:01:21 +02:00
tpm_command.h
trace_clock.h
trace_events.h
trace_seq.h
tracefs.h
tracehook.h
memcg: punt high overage reclaim to return-to-userland path
2015-11-05 19:34:48 -08:00
tracepoint.h
transport_class.h
tsacct_kern.h
tty.h
tty: Abstract tty buffer work
2015-10-17 21:32:21 -07:00
tty_driver.h
tty_flip.h
tty_ldisc.h
typecheck.h
types.h
rcu: force alignment on struct callback_head/rcu_head
2015-11-05 19:34:48 -08:00
u64_stats_sync.h
uaccess.h
uaccess: reimplement probe_kernel_address() using probe_kernel_read()
2015-11-05 19:34:48 -08:00
ucb1400.h
ucs2_string.h
udp.h
uidgid.h
uinput.h
uio.h
uio_driver.h
uprobes.h
usb.h
usb: store the new usb 3.1 SuperSpeedPlus device capability descriptor
2015-10-04 10:34:17 +01:00
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
verify_pefile.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_byteorder.h
virtio_caif.h
virtio_config.h
virtio_console.h
virtio_mmio.h
virtio_ring.h
vlynq.h
vm_event_item.h
include/linux/vm_event_item.h: change HIGHMEM_ZONE macro definition
2015-11-05 19:34:48 -08:00
vm_sockets.h
vmacache.h
vmalloc.h
mm: get rid of 'vmalloc_info' from /proc/meminfo
2015-11-01 17:09:15 -08:00
vme.h
vme: 8-bit status/id takes 256 values, not 255
2015-10-17 22:03:00 -07:00
vmpressure.h
vmstat.h
mm: remove refresh_cpu_vm_stats() definition for !SMP kernel
2015-11-05 19:34:48 -08:00
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
userfaultfd: revert "userfaultfd: waitqueue: add nr wake parameter to __wake_up_locked_key"
2015-09-22 15:09:53 -07:00
wanrouter.h
watchdog.h
wireless.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
zpool: add zpool_has_pool()
2015-09-10 13:29:01 -07:00
zsmalloc.h
zutil.h