linux-stable/include/linux
Hugh Dickins 1be7107fbe mm: larger stack guard gap, between vmas
Stack guard page is a useful feature to reduce a risk of stack smashing
into a different mapping. We have been using a single page gap which
is sufficient to prevent having stack adjacent to a different mapping.
But this seems to be insufficient in the light of the stack usage in
userspace. E.g. glibc uses as large as 64kB alloca() in many commonly
used functions. Others use constructs liks gid_t buffer[NGROUPS_MAX]
which is 256kB or stack strings with MAX_ARG_STRLEN.

This will become especially dangerous for suid binaries and the default
no limit for the stack size limit because those applications can be
tricked to consume a large portion of the stack and a single glibc call
could jump over the guard page. These attacks are not theoretical,
unfortunatelly.

Make those attacks less probable by increasing the stack guard gap
to 1MB (on systems with 4k pages; but make it depend on the page size
because systems with larger base pages might cap stack allocations in
the PAGE_SIZE units) which should cover larger alloca() and VLA stack
allocations. It is obviously not a full fix because the problem is
somehow inherent, but it should reduce attack space a lot.

One could argue that the gap size should be configurable from userspace,
but that can be done later when somebody finds that the new 1MB is wrong
for some special case applications.  For now, add a kernel command line
option (stack_guard_gap) to specify the stack gap size (in page units).

Implementation wise, first delete all the old code for stack guard page:
because although we could get away with accounting one extra page in a
stack vma, accounting a larger gap can break userspace - case in point,
a program run with "ulimit -S -v 20000" failed when the 1MB gap was
counted for RLIMIT_AS; similar problems could come with RLIMIT_MLOCK
and strict non-overcommit mode.

Instead of keeping gap inside the stack vma, maintain the stack guard
gap as a gap between vmas: using vm_start_gap() in place of vm_start
(or vm_end_gap() in place of vm_end if VM_GROWSUP) in just those few
places which need to respect the gap - mainly arch_get_unmapped_area(),
and and the vma tree's subtree_gap support for that.

Original-patch-by: Oleg Nesterov <oleg@redhat.com>
Original-patch-by: Michal Hocko <mhocko@suse.com>
Signed-off-by: Hugh Dickins <hughd@google.com>
Acked-by: Michal Hocko <mhocko@suse.com>
Tested-by: Helge Deller <deller@gmx.de> # parisc
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2017-06-19 21:50:20 +08: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 can: complete initial namespace support 2017-04-25 09:04:29 +02:00
ceph libceph: use kbasename() and kill ceph_file_part() 2017-05-23 20:32:10 +02:00
clk clk: tegra: Changes for v4.12-rc1 2017-04-12 18:51:01 +02:00
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 Merge branch 'for-4.12/asus' into for-linus 2017-05-02 11:02:41 +02:00
iio
input
irqchip KVM: arm/arm64: Fix isues with GICv2 on GICv3 migration 2017-05-24 09:44:07 +02:00
isdn
lockd lockd: Introduce nlmclnt_operations 2017-04-21 10:45:01 -04:00
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 mmc: core: Export API to allow hosts to get the card address 2017-04-24 21:49:15 +02:00
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 fbdev changes for v4.12: 2017-05-11 11:12:26 -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 Merge remote-tracking branches 'spi/topic/ti-qspi' and 'spi/topic/xlp' into spi-next 2017-04-26 15:58:22 +01:00
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 libata: remove SCT WRITE SAME support 2017-04-28 18:09:59 -04:00
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 fs: Provide infrastructure for dynamic BDIs in filesystems 2017-04-20 12:09:55 -06:00
backing-dev.h bdi: Drop 'parent' argument from bdi_register[_va]() 2017-04-20 12:09:55 -06: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
bfin_mac.h
binfmts.h
bio.h Merge branch 'md-next' into md-linus 2017-05-01 14:09:21 -07: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 block: Fix a blk_exit_rl() regression 2017-06-14 13:27:50 -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 fs: remove _submit_bh() 2017-04-26 23:54:06 -04:00
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 clocksource: Use GENMASK_ULL in definition of CLOCKSOURCE_MASK 2017-04-20 14:56:58 +02:00
cm4000_cs.h
cma.h cma: Introduce cma_for_each_area 2017-04-18 20:41:12 +02:00
cmdline-parser.h
cn_proc.h
cnt32_to_63.h
coda.h
coda_psdev.h coda: Convert to separately allocated bdi 2017-04-20 12:09:55 -06:00
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: move console_init() out of tty_io.c 2017-04-18 18:01:52 +02:00
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 cpufreq: schedutil: Use policy-dependent transition delays 2017-04-17 18:37:27 +02:00
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
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-buf: Rename dma-ops to prevent conflict with kunmap_atomic macro 2017-04-20 13:47:46 +05:30
dma-contiguous.h
dma-debug.h
dma-direction.h
dma-fence-array.h
dma-fence.h mm: Rename SLAB_DESTROY_BY_RCU to SLAB_TYPESAFE_BY_RCU 2017-04-18 11:42:36 -07:00
dma-iommu.h iommu/dma: Fix function declaration 2017-05-30 11:25:45 +02:00
dma-mapping.h of/acpi: Configure dma operations at probe time for platform/amba/pci bus devices 2017-04-20 16:31:06 +02:00
dma_remapping.h x86, iommu/vt-d: Add an option to disable Intel IOMMU force on 2017-04-26 23:57:53 +02:00
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 fs: add a VALID_OPEN_FLAGS 2017-04-27 05:13:04 -04:00
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 block: get rid of blk_integrity_revalidate() 2017-04-21 14:17:27 -06:00
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
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 time: Change k_clock nsleep() to use timespec64 2017-04-14 21:49:56 +02:00
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 scsi: introduce a result field in struct scsi_request 2017-04-20 12:16:10 -06:00
idr.h
ieee80211.h mac80211: Add support for BSS max idle period element 2017-04-28 12:28:45 +02:00
ieee802154.h
if_arp.h
if_bridge.h bridge: add per-port broadcast flood flag 2017-04-27 16:34:29 -04:00
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
integrity.h
intel-iommu.h
intel-svm.h
interrupt.h genirq: Return the IRQ name from free_irq() 2017-04-18 13:40:00 -05:00
interval_tree.h
interval_tree_generic.h
io-64-nonatomic-hi-lo.h
io-64-nonatomic-lo-hi.h
io-mapping.h
io.h linux/io.h: Add pci_remap_cfgspace() interface 2017-04-19 13:58:51 -05:00
ioc3.h
ioc4.h
iocontext.h
iomap.h ext2, ext4, xfs: retrieve dax_device for iomap operations 2017-04-25 13:20:46 -07:00
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 kbuild: fix asm-offset generation to work with clang 2017-04-23 15:51:26 +09:00
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
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: pca9532: Extend pca9532 device tree support 2017-04-19 20:27:50 +02:00
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 lightnvm: allow to init targets on factory mode 2017-04-16 10:06:25 -06:00
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
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
mISDNdsp.h
mISDNhw.h
mISDNif.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 mm: drop unused pmdp_huge_get_and_clear_notify() 2017-04-13 18:24:21 -07:00
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
mount.h
mpage.h
mpi.h
mpls.h flow_dissector: add mpls support (v2) 2017-04-24 14:30:46 -04:00
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 make sure that mntns_install() doesn't end up with referral for root 2017-04-21 14:05:36 -04:00
nd.h libnvdimm: add an atomic vs process context flag to rw_bytes 2017-05-10 21:46:22 -07:00
net.h l2tp: device MTU setup, tunnel socket needs a lock 2017-04-17 13:01:48 -04:00
netdev_features.h net: Add ESP offload features 2017-04-14 10:05:36 +02:00
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 NFSv4: Don't special case "launder" 2017-04-26 13:03:04 -04:00
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: Add an iocounter wait function for async RPC tasks 2017-04-21 10:45:01 -04:00
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 nvme: improve performance for virtual NVMe devices 2017-04-21 16:41:47 +02:00
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: Change pci_host_common_probe() visibility 2017-04-18 14:21:04 -05:00
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 PCI: Add device IDs for DRA74x and DRA72x 2017-04-28 10:23:19 -05:00
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 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-04-26 22:39:08 -04:00
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 x86, dax, pmem: remove indirection around memcpy_from_pmem() 2017-04-25 13:20:46 -07:00
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h
poll.h move compat select-related syscalls to fs/select.c 2017-04-17 12:52:22 -04:00
posix-clock.h time: Change posix clocks ops interfaces to use timespec64 2017-04-14 21:49:54 +02:00
posix-timers.h time: Change k_clock nsleep() to use timespec64 2017-04-14 21:49:56 +02:00
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 srcu: Move rcu_init_levelspread() to rcu_tree_node.h 2017-04-18 11:38:20 -07:00
rcu_segcblist.h srcu: Debloat the <linux/rcu_segcblist.h> header 2017-05-02 06:29:22 -07:00
rcu_sync.h
rculist.h hlist_add_tail_rcu disable sparse warning 2017-04-19 09:29:18 -07:00
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 rcu: Make non-preemptive schedule be Tasks RCU quiescent state 2017-04-21 05:59:27 -07:00
rcutree.h rcu: Make non-preemptive schedule be Tasks RCU quiescent state 2017-04-21 05:59:27 -07:00
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 sbitmap: add sbitmap_get_shallow() operation 2017-04-14 14:06:52 -06:00
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: Remove unused definition of sig_user_definied 2017-04-17 21:53:19 -05:00
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 mm: Rename SLAB_DESTROY_BY_RCU to SLAB_TYPESAFE_BY_RCU 2017-04-18 11:42:36 -07:00
slab_def.h
slub_def.h
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 srcu: Make rcutorture writer stalls print SRCU GP state 2017-04-26 11:23:28 -07:00
srcutiny.h srcu: Make rcutorture writer stalls print SRCU GP state 2017-04-26 11:23:28 -07:00
srcutree.h srcu: Specify auto-expedite holdoff time 2017-04-26 16:32:17 -07:00
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 sysctl: Remove dead register_sysctl_root 2017-04-16 23:42:49 -05:00
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: switch rcv_rtt_est and rcvq_space to high resolution timestamps 2017-04-26 14:44:39 -04:00
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
timekeeping.h time: Change k_clock clock_get() to use timespec64 2017-04-14 21:49:55 +02:00
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 types: Update obsolete callback_head comment 2017-04-19 09:29:17 -07:00
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: fix some references for /proc/bus/usb 2017-04-18 16:54:19 +02: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
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 VSOCK: Add virtio vsock vsockmon hooks 2017-04-24 12:35:56 -04:00
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 workqueue: Provide work_on_cpu_safe() 2017-04-15 12:20:53 +02: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
zsmalloc.h
zutil.h