Daniel Borkmann
6bb0fef489
netlink, mmap: fix edge-case leakages in nf queue zero-copy
...
When netlink mmap on receive side is the consumer of nf queue data,
it can happen that in some edge cases, we write skb shared info into
the user space mmap buffer:
Assume a possible rx ring frame size of only 4096, and the network skb,
which is being zero-copied into the netlink skb, contains page frags
with an overall skb->len larger than the linear part of the netlink
skb.
skb_zerocopy(), which is generic and thus not aware of the fact that
shared info cannot be accessed for such skbs then tries to write and
fill frags, thus leaking kernel data/pointers and in some corner cases
possibly writing out of bounds of the mmap area (when filling the
last slot in the ring buffer this way).
I.e. the ring buffer slot is then of status NL_MMAP_STATUS_VALID, has
an advertised length larger than 4096, where the linear part is visible
at the slot beginning, and the leaked sizeof(struct skb_shared_info)
has been written to the beginning of the next slot (also corrupting
the struct nl_mmap_hdr slot header incl. status etc), since skb->end
points to skb->data + ring->frame_size - NL_MMAP_HDRLEN.
The fix adds and lets __netlink_alloc_skb() take the actual needed
linear room for the network skb + meta data into account. It's completely
irrelevant for non-mmaped netlink sockets, but in case mmap sockets
are used, it can be decided whether the available skb_tailroom() is
really large enough for the buffer, or whether it needs to internally
fallback to a normal alloc_skb().
>From nf queue side, the information whether the destination port is
an mmap RX ring is not really available without extra port-to-socket
lookup, thus it can only be determined in lower layers i.e. when
__netlink_alloc_skb() is called that checks internally for this. I
chose to add the extra ldiff parameter as mmap will then still work:
We have data_len and hlen in nfqnl_build_packet_message(), data_len
is the full length (capped at queue->copy_range) for skb_zerocopy()
and hlen some possible part of data_len that needs to be copied; the
rem_len variable indicates the needed remaining linear mmap space.
The only other workaround in nf queue internally would be after
allocation time by f.e. cap'ing the data_len to the skb_tailroom()
iff we deal with an mmap skb, but that would 1) expose the fact that
we use a mmap skb to upper layers, and 2) trim the skb where we
otherwise could just have moved the full skb into the normal receive
queue.
After the patch, in my test case the ring slot doesn't fit and therefore
shows NL_MMAP_STATUS_COPY, where a full skb carries all the data and
thus needs to be picked up via recv().
Fixes: 3ab1f683bf ("nfnetlink: add support for memory mapped netlink")
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-09-09 21:43:22 -07:00
..
amba
uart: pl011: Add support to ZTE ZX296702 uart
2015-08-04 22:07:26 -07:00
bcma
bcma: switch GPIO portions to use GPIOLIB_IRQCHIP
2015-08-18 09:08:47 +03:00
byteorder
can
can: replace timestamp as unique skb attribute
2015-07-12 21:13:22 +02:00
ceph
libceph: enable ceph in a non-default network namespace
2015-07-09 20:30:34 +03:00
clk
ARM: SoC driver updates for v4.3
2015-09-01 13:00:04 -07:00
crush
crush: sync up with userspace
2015-06-25 11:49:31 +03:00
decompress
dma
extcon
fsl /bestcomm
gpio
gpio: Remove double "base" in comment
2015-07-16 00:12:24 +02:00
hsi
i2c
mfd: twl4030-power: Fix pmic for boards that need AC charger disabled
2015-06-22 12:25:04 +01:00
iio
iio: Add inverse unit conversion macros
2015-08-08 12:50:40 +01:00
input
Input: improve parsing OF parameters for touchscreens
2015-06-25 14:45:46 -07:00
irqchip
irqchip/gic: Ensure gic_cpu_if_up/down() programs correct GIC instance
2015-08-04 14:14:06 +02:00
isdn
lockd
mfd
ARM: SoC platform updates for v4.3
2015-09-01 12:18:40 -07:00
mlx4
net/mlx4_en: Add support for hardware accelerated 802.1ad vlan
2015-07-27 15:00:37 -07:00
mlx5
net/mlx5e: Support ethtool get/set_pauseparam
2015-08-17 15:51:36 -07:00
mmc
mmc: mediatek: Add Mediatek MMC driver
2015-06-18 09:20:48 +02:00
mtd
mtd: nand: Fix NAND_USE_BOUNCE_BUFFER flag conflict
2015-07-07 13:03:25 -07:00
netfilter
netfilter: nf_conntrack: make nf_ct_zone_dflt built-in
2015-09-02 16:32:56 -07:00
netfilter_arp
netfilter_bridge
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial
2015-06-23 14:08:54 -07:00
netfilter_ipv4
netfilter_ipv6
phy
phy: for 4.2 merge window
2015-06-03 14:13:41 +09:00
pinctrl
platform_data
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2015-09-03 08:08:17 -07:00
power
raid
regulator
Merge remote-tracking branches 'regulator/topic/qcom-smd', 'regulator/topic/qcom-spmi', 'regulator/topic/rk808', 'regulator/topic/stub' and 'regulator/topic/tol' into regulator-next
2015-08-30 14:40:11 +01:00
reset
rtc
ARM: prima2: move to use REGMAP APIs for rtciobrg
2015-06-10 15:10:26 +08:00
sched
timer: Reduce timer migration overhead if disabled
2015-06-19 15:18:28 +02:00
soc
ARM: SoC driver updates for v4.3
2015-09-01 13:00:04 -07:00
spi
spi: expose spi_master and spi_device statistics via sysfs
2015-07-07 13:33:23 +01:00
ssb
MIPS: BCM47xx: Extract info about et2 interface
2015-06-21 21:52:24 +02:00
sunrpc
NFS client updates for Linux 4.2
2015-07-02 11:32:23 -07:00
ulpi
unaligned
usb
Revert "usb: interface authorization: Introduces the default interface authorization"
2015-08-18 09:58:45 -07:00
uwb
wimax
8250_pci.h
a.out.h
acct.h
acpi.h
Merge branches 'acpi-pci', 'acpi-soc', 'acpi-ec' and 'acpi-osl'
2015-09-01 03:41:19 +02:00
acpi_dma.h
acpi_irq.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
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
Revert "libata: Implement NCQ autosense"
2015-08-03 12:01:54 -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_serial.h
tty/serial: at91: add support to FIFOs
2015-07-23 18:00:42 -07:00
atmel_tc.h
atomic.h
attribute_container.h
audit.h
auto_dev-ioctl.h
auto_fs.h
auxvec.h
average.h
average: remove out-of-line implementation
2015-08-20 14:10:23 -07:00
b1pcmcia.h
backing-dev-defs.h
writeback: don't embed root bdi_writeback_congested in bdi_writeback
2015-07-02 08:46:00 -06:00
backing-dev.h
writeback: don't embed root bdi_writeback_congested in bdi_writeback
2015-07-02 08:46:00 -06:00
backlight.h
backlight: Change the return type of backlight_update_status() to int
2015-06-23 15:47:35 +01:00
balloon_compaction.h
basic_mmio_gpio.h
bcd.h
bch.h
bcm47xx_nvram.h
MIPS: BCM47xx: Move NVRAM driver to the drivers/firmware/
2015-06-21 21:55:33 +02:00
bcm47xx_wdt.h
bfin_mac.h
binfmts.h
bio.h
block: Replace SG_GAPS with new queue limits mask
2015-08-19 14:26:02 -07:00
bit_spinlock.h
bitmap.h
linux/bitmap: Force inlining of bitmap weight functions
2015-08-05 09:38:08 +02:00
bitops.h
linux/bitmap: Force inlining of bitmap weight functions
2015-08-05 09:38:08 +02:00
bitrev.h
blk-cgroup.h
blk-cgroup: Drop unlikely before IS_ERR(_OR_NULL)
2015-08-13 10:45:09 -06:00
blk-iopoll.h
blk-mq.h
blk-mq: Shared tag enhancements
2015-06-01 14:35:56 -06:00
blk_types.h
block: shrink struct bio down to 2 cache lines again
2015-07-29 08:55:25 -06:00
blkdev.h
block: Replace SG_GAPS with new queue limits mask
2015-08-19 14:26:02 -07:00
blktrace_api.h
blockgroup_lock.h
bma150.h
bootmem.h
mm: only define hashdist variable when needed
2015-06-24 17:49:41 -07:00
bottom_half.h
bpf.h
bpf: Implement function bpf_perf_event_read() that get the selected hardware PMU conuter
2015-08-09 22:50:06 -07:00
brcmphy.h
net: phy: broadcom: define Broadcom pseudo-PHY address in brcmphy.h
2015-06-10 23:33:58 -07:00
bsearch.h
bsg-lib.h
bsg.h
btree-128.h
btree-type.h
btree.h
btrfs.h
buffer_head.h
bufferhead: Add _gfp version for sb_getblk()
2015-07-02 01:32:44 -04:00
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
Merge branch 'for-4.3-unified-base' into for-4.3
2015-08-25 14:19:29 -04:00
cgroup.h
Merge branch 'for-4.3-unified-base' into for-4.3
2015-08-25 14:19:29 -04:00
cgroup_subsys.h
cgroup: implement the PIDs subsystem
2015-07-14 17:29:23 -04:00
circ_buf.h
cleancache.h
clk-provider.h
clk: Constify clk_hw argument to provider APIs
2015-08-24 16:49:11 -07:00
clk.h
clkdev.h
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
clksrc-dbx500-prcmu.h
clock_cooling.h
clockchips.h
clockevents: Remove clockevents_notify() prototype
2015-07-20 11:37:46 +02:00
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
compat.h
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
compiler-clang.h
compiler-gcc.h
compiler-gcc: integrate the various compiler-gcc[345].h files
2015-06-25 17:00:38 -07:00
compiler-intel.h
compiler-intel: fix wrong compiler barrier() macro
2015-06-25 17:00:38 -07:00
compiler.h
Merge branch 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/nvdimm
2015-07-11 20:44:31 -07:00
completion.h
component.h
concap.h
configfs.h
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
connector.h
console.h
printk: implement support for extended console drivers
2015-06-25 17:00:38 -07:00
console_struct.h
consolemap.h
container.h
context_tracking.h
context_tracking: Add ct_state() and CT_WARN_ON()
2015-07-07 10:59:04 +02:00
context_tracking_state.h
context_tracking: Add ct_state() and CT_WARN_ON()
2015-07-07 10:59:04 +02:00
cordic.h
coredump.h
coresight.h
coresight: Fix implicit inclusion of linux/sched.h
2015-08-05 13:30:16 -07:00
cper.h
efi: Handle memory error structures produced based on old versions of standard
2015-07-15 13:30:38 +01:00
cpu.h
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
cpu_cooling.h
cpu_pm.h
cpu_rmap.h
cpufeature.h
cpufeature: correctly annotate the module init function
2015-07-22 09:58:02 +02:00
cpufreq-dt.h
cpufreq.h
Merge branch 'pm-opp'
2015-09-01 15:52:41 +02:00
cpuidle.h
cpuidle/coupled: Remove cpuidle_device::safe_state_index
2015-08-28 15:14:54 +02:00
cpumask.h
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
crypto: aead - Remove CRYPTO_ALG_AEAD_NEW flag
2015-08-17 16:53:53 +08:00
cryptohash.h
cs5535.h
ctype.h
cuda.h
cyclades.h
davinci_emac.h
dca.h
dcache.h
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
dccp.h
dcookies.h
debug_locks.h
debugfs.h
debugobjects.h
delay.h
delayacct.h
dell-led.h
devcoredump.h
devfreq-event.h
devfreq.h
device-mapper.h
block: kill merge_bvec_fn() completely
2015-08-13 12:31:57 -06:00
device.h
Power management and ACPI material for v4.3-rc1
2015-09-01 19:45:46 -07:00
device_cgroup.h
devpts_fs.h
digsig.h
dio.h
dirent.h
dlm.h
dlm_plock.h
dm-dirty-log.h
dm-io.h
dm-kcopyd.h
dm-region-hash.h
dm9000.h
dma-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/xdmac' into for-linus
2015-06-25 09:21:49 +05:30
dmapool.h
dmar.h
iommu: dmar: Provide helper to copy shared irte fields
2015-06-12 11:33:52 +02:00
dmi.h
firmware: dmi: struct dmi_header should be packed
2015-06-25 09:06:57 +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
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
The libnvdimm sub-system introduces, in addition to the libnvdimm-core,
2015-06-29 10:34:42 -07:00
efs_vh.h
eisa.h
elevator.h
cfq-iosched: fix the setting of IOPS mode on SSDs
2015-06-10 08:01:20 -06:00
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
net: fix endian check warning in etherdevice.h
2015-08-17 12:14:53 -07:00
ethtool.h
eventfd.h
eventpoll.h
evm.h
export.h
exportfs.h
ext2_fs.h
extcon.h
extcon: Remove optional print_state() function pointer of struct extcon_dev
2015-08-10 11:48:55 +09:00
f2fs_fs.h
f75375s.h
falloc.h
fanotify.h
fault-inject.h
fb.h
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
rcu: Rename rcu_lockdep_assert() to RCU_LOCKDEP_WARN()
2015-07-22 15:27:32 -07:00
fec.h
fence.h
file.h
filter.h
bpf: also show process name/pid in bpf_jit_dump
2015-07-30 11:13:21 -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
frontswap: allow multiple backends
2015-06-24 17:49:45 -07:00
fs.h
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace
2015-09-01 16:13:25 -07: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
drivers: usb: fsl: Workaround for USB erratum-A005275
2015-08-14 16:50:36 -07:00
fsl_hypervisor.h
fsl_ifc.h
fsldma.h
fsnotify.h
fsnotify_backend.h
fsnotify: remove obsolete documentation
2015-06-24 17:49:38 -07:00
ftrace.h
ftrace: Fix breakage of set_ftrace_pid
2015-07-24 13:58:14 -04:00
ftrace_irq.h
futex.h
fwnode.h
gameport.h
gcd.h
genalloc.h
genalloc: rename of_get_named_gen_pool() to of_gen_pool_get()
2015-06-30 19:45:01 -07:00
genetlink.h
genhd.h
block: partition: convert percpu ref
2015-07-17 08:41:53 -06:00
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h
mm: meminit: finish initialisation of struct pages before basic setup
2015-06-30 19:44:56 -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
First set of IIO fixes for the 4.2 cycle.
2015-07-13 14:18:07 -07:00
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
timer: Minimize nohz off overhead
2015-06-19 15:18:28 +02:00
htcpld.h
htirq.h
huge_mm.h
hugetlb.h
mm: hugetlb: allow hugepages_supported to be architecture specific
2015-07-17 16:39:52 -07: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
Drivers: hv: vmbus: Further improve CPU affiliation logic
2015-08-05 11:44:28 -07: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
mac80211: fix BIT position for TDLS WIDE extended cap
2015-08-14 17:49:53 +02:00
ieee802154.h
if_arp.h
if_bridge.h
if_eql.h
if_ether.h
if_fddi.h
if_frad.h
if_link.h
net/core: Add reading VF statistics through the PF netdevice
2015-06-15 17:23:03 -07:00
if_ltalk.h
if_macvlan.h
macvtap: Increase limit of macvtap queues
2015-06-23 06:14:04 -07:00
if_phonet.h
if_pppol2tp.h
if_pppox.h
if_team.h
if_tun.h
if_tunnel.h
if_vlan.h
vlan: Add GRO support for non hardware accelerated vlan
2015-06-01 16:50:52 -07:00
igmp.h
IGMP: Inhibit reports for local multicast groups
2015-08-28 13:28:47 -07:00
ihex.h
ima.h
in.h
in6.h
inet.h
inet_diag.h
sock_diag: specify info_size per inet protocol
2015-06-15 19:49:22 -07:00
inet_lro.h
inetdevice.h
net: ipv4 sysctl option to ignore routes when nexthop link is down
2015-06-24 02:15:54 -07:00
init.h
module: relocate module_init from init.h to module.h
2015-07-05 23:59:14 -04:00
init_ohci1394_dma.h
init_task.h
sched/cputime: Guarantee stime + utime == rtime
2015-08-03 12:21:21 +02:00
initrd.h
inotify.h
input-polldev.h
input.h
integrity.h
intel-iommu.h
IOMMU Updates for Linux v4.2
2015-06-23 18:27:19 -07:00
intel_pmic_gpio.h
interrupt.h
interval_tree.h
interval_tree_generic.h
io-mapping.h
io.h
x86/mm: Decouple <linux/vmalloc.h> from <asm/io.h>
2015-06-03 12:02:00 +02:00
ioc3.h
ioc4.h
iocontext.h
iommu-common.h
iommu-helper.h
iommu.h
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
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
net: ipv6 sysctl option to ignore routes when nexthop link is down
2015-08-13 21:27:19 -07:00
ipv6_route.h
irq.h
Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2015-09-01 14:33:35 -07:00
irq_cpustat.h
irq_work.h
irqchip.h
irqchip: Move IRQCHIP_DECLARE macro to include/linux/irqchip.h
2015-07-02 22:34:38 +02:00
irqdesc.h
genirq: Provide irq_desc_has_action
2015-08-06 00:14:59 +02:00
irqdomain.h
genirq: Add DOMAIN_BUS_NEXUS irqdomain property
2015-07-30 00:14:38 +02:00
irqflags.h
irqhandler.h
irqnr.h
genirq: Remove irq_node()
2015-06-25 12:06:45 +02:00
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
jbd2: fix ocfs2 corrupt when updating journal superblock fails
2015-06-15 14:36:01 -04:00
jbd_common.h
jhash.h
jiffies.h
Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2015-09-01 14:04:50 -07:00
journal-head.h
joystick.h
jump_label.h
jump_label_ratelimit.h
jz4740-adc.h
jz4780-nemc.h
kallsyms.h
kasan.h
x86/kasan, mm: Introduce generic kasan_populate_zero_shadow()
2015-08-22 14:54:55 +02:00
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
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
kernel_stat.h
kernelcapi.h
kernfs.h
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace
2015-07-03 15:20:57 -07:00
kexec.h
kexec: define kexec_in_progress in !CONFIG_KEXEC case
2015-08-04 22:25:28 -07:00
key-type.h
key.h
keyboard.h
kfifo.h
kgdb.h
khugepaged.h
klist.h
klist: implement klist_prev()
2015-07-28 08:50:42 +01:00
kmemcheck.h
kmemleak.h
mm: kmemleak_alloc_percpu() should follow the gfp from per_alloc()
2015-06-24 17:49:46 -07:00
kmod.h
kmsg_dump.h
kobj_map.h
kobject.h
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
kobject_ns.h
kprobes.h
perf/x86/hw_breakpoints: Disallow kernel breakpoints unless kprobe-safe
2015-08-04 10:16:54 +02:00
kref.h
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h
kthread.h
sched: Fix a race between __kthread_bind() and sched_setaffinity()
2015-08-12 12:06:09 +02:00
ktime.h
kvm_host.h
KVM: document memory barriers for kvm->vcpus/kvm->online_vcpus
2015-07-30 16:02:54 +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
leds_pwm.h
lglock.h
sched/stop_machine: Fix deadlock between multiple stop_two_cpus()
2015-06-19 10:03:12 +02:00
lguest.h
lguest_launcher.h
libata.h
libata: add ATA_HORKAGE_MAX_SEC_1024 to revert back to previous max_sectors limit
2015-07-15 11:47:24 -04:00
libfdt.h
libfdt_env.h
libnvdimm.h
libnvdimm: Add sysfs numa_node to NVDIMM devices
2015-06-26 11:23:38 -04:00
libps2.h
license.h
linkage.h
linux_logo.h
lis3lv02d.h
list.h
list_bl.h
list_lru.h
list_nulls.h
list_sort.h
livepatch.h
llc.h
llist.h
lockdep.h
Merge branch 'sched-hrtimers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2015-06-24 15:09:40 -07:00
lockref.h
log2.h
lp.h
lru_cache.h
lsm_audit.h
lsm_hooks.h
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security
2015-06-27 13:26:03 -07:00
lz4.h
lzo.h
m48t86.h
mailbox_client.h
mailbox: Add ability for clients to request channels by name
2015-06-11 22:19:45 +05:30
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
mei: bus: add and call callback on notify event
2015-08-03 17:30:00 -07:00
memblock.h
memblock: introduce a for_each_reserved_mem_region iterator
2015-06-30 19:44:55 -07:00
memcontrol.h
Merge branch 'for-4.2/writeback' of git://git.kernel.dk/linux-block
2015-06-25 16:00:17 -07:00
memory.h
memory_hotplug.h
mempolicy.h
mempool.h
memstick.h
mg_disk.h
mic_bus.h
micrel_phy.h
microchipphy.h
add microchip LAN88xx phy driver
2015-09-09 17:19:14 -07:00
migrate.h
migrate_mode.h
mii.h
miscdevice.h
char: make misc_deregister a void function
2015-08-05 10:35:49 -07:00
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm-arch-hooks.h
mm: new arch_remap() hook
2015-06-24 17:49:41 -07:00
mm.h
mm: make page pfmemalloc check more robust
2015-08-21 14:30:10 -07:00
mm_inline.h
mm_types.h
mm: make page pfmemalloc check more robust
2015-08-21 14:30:10 -07:00
mman.h
mmdebug.h
mmiotrace.h
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
mmu_context.h
mmu_notifier.h
mm: clarify that the function operates on hugepage pte
2015-06-24 17:49:44 -07:00
mmzone.h
mm: meminit: initialise a subset of struct pages if CONFIG_DEFERRED_STRUCT_PAGE_INIT is set
2015-06-30 19:44:56 -07:00
mnt_namespace.h
mod_devicetable.h
mod_devicetable: add space before */
2015-08-07 15:03:42 +02:00
module.h
module: relocate module_init from init.h to module.h
2015-07-05 23:59:14 -04:00
moduleloader.h
moduleparam.h
Minor merge needed, due to function move.
2015-07-01 10:49:25 -07:00
mount.h
mpage.h
mpi.h
MPILIB: add mpi_read_buf() and mpi_get_size() helpers
2015-06-16 14:35:06 +08:00
mpls.h
mpls_iptunnel.h
mpls: ip tunnel support
2015-07-21 10:39:05 -07:00
mroute.h
mroute6.h
msdos_fs.h
msg.h
msi.h
PCI/MSI: Drop domain field from msi_controller
2015-07-30 00:14:39 +02:00
msm_mdp.h
mutex-debug.h
mutex.h
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
mvebu-pmsu.h
mxm-wmi.h
n_r3964.h
namei.h
nd.h
libnvdimm: infrastructure for btt devices
2015-06-25 04:20:04 -04:00
net.h
net_dbg_ratelimited: turn into no-op when !DEBUG
2015-08-06 23:51:30 -07:00
netdev_features.h
netdevice.h
net: kill long time unused bonding private flags
2015-08-27 16:28:35 -07:00
netfilter.h
netfilter: nf_conntrack: make nf_ct_zone_dflt built-in
2015-09-02 16:32:56 -07:00
netfilter_bridge.h
netfilter: bridge: reduce nf_bridge_info to 32 bytes again
2015-07-30 13:37:42 +02:00
netfilter_defs.h
netfilter: don't pull include/linux/netfilter.h from netns headers
2015-06-18 21:14:31 +02:00
netfilter_ingress.h
netfilter_ipv4.h
netfilter_ipv6.h
netfilter: Define v6ops in !CONFIG_NETFILTER case.
2015-08-27 16:35:51 -07:00
netlink.h
netlink, mmap: fix edge-case leakages in nf queue zero-copy
2015-09-09 21:43:22 -07:00
netpoll.h
nfs.h
nfs3.h
nfs4.h
NFSv.2/pnfs Add a LAYOUTSTATS rpc function
2015-06-24 10:17:37 -04:00
nfs_fs.h
NFS: nfs_mark_for_revalidate should always set NFS_INO_REVAL_PAGECACHE
2015-07-22 17:15:54 -04:00
nfs_fs_i.h
nfs_fs_sb.h
NFS: Remove the "NFS_CAP_CHANGE_ATTR" capability
2015-07-22 17:15:54 -04:00
nfs_iostat.h
nfs_page.h
NFS: Remove unused nfs_rw_ops->rw_release() function
2015-06-10 18:32:40 -04:00
nfs_xdr.h
NFSv.2/pnfs Add a LAYOUTSTATS rpc function
2015-06-24 10:17:37 -04:00
nfsacl.h
nilfs2_fs.h
nl802154.h
nls.h
nmi.h
watchdog: add watchdog_cpumask sysctl to assist nohz
2015-06-24 17:49:40 -07:00
node.h
nodemask.h
notifier.h
ns_common.h
nsc_gpio.h
nsproxy.h
ntb.h
NTB: Add NTB hardware abstraction layer
2015-07-04 14:04:44 -04:00
ntb_transport.h
NTB: Split ntb_hw_intel and ntb_transport drivers
2015-07-04 14:05:49 -04:00
nubus.h
numa.h
nvme.h
NVMe: Add nvme subsystem reset IOCTL
2015-08-18 11:56:13 -06:00
nvmem-consumer.h
nvmem: Add nvmem_device based consumer apis.
2015-08-05 13:43:44 -07:00
nvmem-provider.h
nvmem: Add a simple NVMEM framework for nvmem providers
2015-08-05 13:43:12 -07:00
nvram.h
nwpserial.h
of.h
device property: check fwnode type in to_of_node()
2015-08-26 01:46:39 +02:00
of_address.h
of_device.h
of: constify drv arg of of_driver_match_device stub
2015-07-27 08:23:27 -05:00
of_dma.h
of_fdt.h
Devicetree changes for v4.2
2015-07-01 19:40:18 -07:00
of_gpio.h
of_graph.h
of: fix a build error to of_graph_get_endpoint_by_regs function
2015-06-24 11:18:48 +10:00
of_iommu.h
of_irq.h
of/platform: Assign MSI domain to platform device
2015-07-30 00:14:37 +02:00
of_mdio.h
of_mtd.h
of_net.h
of_pci.h
of_pdt.h
of_platform.h
of/platform: add function to populate default bus
2015-08-25 11:29:55 -05: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
oom.h
mm: oom_kill: simplify OOM killer locking
2015-06-24 17:49:43 -07:00
openvswitch.h
oprofile.h
osq_lock.h
oxu210hp.h
padata.h
page-flags-layout.h
page-flags.h
mm: check __PG_HWPOISON separately from PAGE_FLAGS_CHECK_AT_*
2015-08-07 04:39:42 +03:00
page-isolation.h
page_counter.h
page_ext.h
page_owner.h
mm/page_owner: set correct gfp_mask on page_owner
2015-07-17 16:39:54 -07:00
pageblock-flags.h
pagemap.h
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2015-07-04 19:36:06 -07:00
pagevec.h
parport.h
parport_pc.h
parser.h
pata_arasan_cf_data.h
Update Viresh Kumar's email address
2015-07-17 16:39:53 -07:00
patchkey.h
path.h
pch_dma.h
pci-acpi.h
pci-aspm.h
pci-ats.h
PCI: Move ATS declarations to linux/pci.h so they're all together
2015-08-13 15:59:58 -05:00
pci-dma.h
pci.h
Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2015-09-01 14:33:35 -07:00
pci_hotplug.h
pci_ids.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2015-06-24 16:49:49 -07:00
pcieport_if.h
pda_power.h
pe.h
percpu-defs.h
percpu: update incorrect comment for this_cpu_*() operations
2015-07-14 17:43:56 -04:00
percpu-refcount.h
percpu-rwsem.h
percpu.h
percpu_counter.h
percpu_ida.h
perf_event.h
perf: add the necessary core perf APIs when accessing events counters in eBPF programs
2015-08-09 22:50:05 -07:00
perf_regs.h
personality.h
pfn.h
phonet.h
phy.h
net: phy: Allow PHY devices to identify themselves as Ethernet switches, etc.
2015-08-31 14:48:01 -07:00
phy_fixed.h
phy: fixed_phy: Add gpio to determine link up/down.
2015-08-31 14:48:02 -07:00
pid.h
pid_namespace.h
pim.h
pipe_fs_i.h
pktcdvd.h
pl320-ipc.h
platform_device.h
platform_device: better support builtin boilerplate avoidance
2015-06-16 14:12:37 -04:00
plist.h
pm-trace.h
pm.h
Merge branch 'pm-wakeirq'
2015-06-19 01:18:14 +02:00
pm2301_charger.h
pm_clock.h
pm_domain.h
PM / Domains: Remove unusable governor dummies
2015-08-29 01:54:43 +02:00
pm_opp.h
PM / OPP: add dev_pm_opp_is_turbo() helper
2015-08-07 03:17:06 +02:00
pm_qos.h
PM / QoS: Make it possible to expose device latency tolerance to userspace
2015-07-28 08:50:41 +01:00
pm_runtime.h
PM / sleep: Allow devices without runtime PM to do direct-complete
2015-07-21 23:14:22 +02:00
pm_wakeirq.h
pm_wakeup.h
pmem.h
The libnvdimm sub-system introduces, in addition to the libnvdimm-core,
2015-06-29 10:34:42 -07:00
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h
poll.h
posix-clock.h
posix-timers.h
posix_acl.h
posix_acl_xattr.h
power_supply.h
power: Add devm_power_supply_get_by_phandle() helper function
2015-06-10 16:15:54 +02:00
powercap.h
ppp-comp.h
ppp_channel.h
ppp_defs.h
pps-gpio.h
pps_kernel.h
preempt.h
sched/preempt: Fix cond_resched_lock() and cond_resched_softirq()
2015-08-03 12:21:24 +02:00
prefetch.h
printk.h
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
proc_fs.h
proc_ns.h
profile.h
projid.h
property.h
Add a matching set of device_ functions for determining mac/phy
2015-08-13 16:58:29 -07:00
proportions.h
proportions: Spelling s/consitent/consistent/
2015-08-07 14:37:04 +02:00
pstore.h
pstore_ram.h
pti.h
ptp_classify.h
ptp_clock_kernel.h
ptrace.h
pvclock_gtod.h
pwm.h
pwm: Add pwmchip_add_with_polarity() API
2015-06-12 11:36:30 +02:00
pwm_backlight.h
pxa2xx_ssp.h
spi: pxa2xx: Add support for Intel Sunrisepoint
2015-07-31 19:13:33 +01: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
random: Remove kernel blocking API
2015-06-10 19:14:04 +08:00
range.h
ras.h
ratelimit.h
rational.h
rbtree.h
rbtree_augmented.h
rbtree_latch.h
rculist.h
rculist_bl.h
rculist_nulls.h
rcupdate.h
rcu: Rename rcu_lockdep_assert() to RCU_LOCKDEP_WARN()
2015-07-22 15:27:32 -07:00
rcutiny.h
rcu: Add RCU-sched flavors of get-state and cond-sync
2015-07-22 15:26:58 -07:00
rcutree.h
rcu: Add RCU-sched flavors of get-state and cond-sync
2015-07-22 15:26:58 -07:00
reboot.h
reciprocal_div.h
regmap.h
regset.h
relay.h
remoteproc.h
remoteproc: add a rproc ops for performing address translation
2015-06-17 09:57:12 +03:00
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
rtc: interface: Remove rtc_set_mmss()
2015-06-25 01:13:43 +02:00
rtmutex.h
rtnetlink.h
switchdev; add VLAN support for port's bridge_getlink
2015-06-23 06:56:18 -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
lib: scatterlist: add sg splitting function
2015-08-24 14:28:01 -06:00
scc.h
sched.h
Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2015-08-31 20:26:22 -07:00
sched_clock.h
scif.h
screen_info.h
sctp.h
scx200.h
scx200_gpio.h
sdb.h
sdla.h
seccomp.h
securebits.h
security.h
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security
2015-06-27 13:26:03 -07:00
selection.h
selinux.h
sem.h
semaphore.h
seq_buf.h
seq_file.h
vfs: add seq_file_path() helper
2015-06-23 18:01:07 -04:00
seq_file_net.h
seqlock.h
Minor merge needed, due to function move.
2015-07-01 10:49:25 -07:00
seqno-fence.h
serial.h
serial_8250.h
tty/early: make serial8250_early_{in,out} static again
2015-07-23 17:43:30 -07:00
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
flow_dissector: Use 'const' where possible.
2015-09-01 21:19:17 -07:00
slab.h
Fix kmalloc slab creation sequence
2015-06-29 10:49:51 -07:00
slab_def.h
slub_def.h
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
smpboot.h
smpboot: allow excluding cpus from the smpboot threads
2015-06-24 17:49:40 -07:00
smsc911x.h
smscphy.h
sock_diag.h
sock_diag: define destruction multicast groups
2015-06-15 19:49:22 -07:00
socket.h
sonet.h
sony-laptop.h
sonypi.h
sort.h
sound.h
soundcard.h
spinlock.h
Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2015-09-01 08:40:25 -07:00
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
stddef.h: move offsetofend inside #ifndef/#endif guard, neaten
2015-06-25 17:00:38 -07:00
ste_modem_shm.h
stmmac.h
stmmac: remove setup/free glue callbacks
2015-07-29 00:13:25 -07:00
stmp3xxx_rtc_wdt.h
stmp_device.h
stop_machine.h
stop_machine: Use 'cpu_stop_fn_t' where possible
2015-08-03 12:21:27 +02:00
string.h
lib/string.c: introduce strreplace()
2015-06-25 17:00:40 -07:00
string_helpers.h
stringify.h
sudmac.h
sungem_phy.h
sunserialcore.h
superhyway.h
suspend.h
svga.h
sw842.h
swab.h
swap.h
block: add a bi_error field to struct bio
2015-07-29 08:55:15 -06:00
swap_cgroup.h
swapfile.h
swapops.h
swiotlb.h
sxgbe_platform.h
synclink.h
sys.h
sys_soc.h
syscalls.h
This patch series contains several clean ups and even a new trace clock
2015-06-26 14:02:43 -07:00
syscore_ops.h
sysctl.h
sysctl: Allow creating permanently empty directories that serve as mountpoints.
2015-07-01 10:36:39 -05:00
sysfs.h
sysfs: Add support for permanently empty directories to serve as mount points.
2015-07-01 10:36:45 -05:00
syslog.h
check_syslog_permissions() cleanup
2015-06-25 17:00:39 -07:00
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
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
thinkpad_acpi.h
thread_info.h
threads.h
ti_wilink_st.h
Revert "ti-st: add device tree support"
2015-08-05 13:24:12 -07:00
tick.h
nohz: Remove useless argument on tick_nohz_task_switch()
2015-07-29 15:45:01 +02:00
tifm.h
timb_dma.h
timb_gpio.h
time.h
time64.h
time: Introduce struct itimerspec64
2015-08-17 11:25:28 -07:00
timecounter.h
timekeeper_internal.h
time: Prevent early expiry of hrtimers[CLOCK_REALTIME] at the leap second edge
2015-06-12 11:15:49 +02:00
timekeeping.h
Merge branch 'fortglx/4.3/time' of https://git.linaro.org/people/john.stultz/linux into timers/core
2015-08-20 21:13:22 +02:00
timer.h
timer: Reduce timer migration overhead if disabled
2015-06-19 15:18:28 +02:00
timerfd.h
timeriomem-rng.h
timerqueue.h
timex.h
topology.h
torture.h
toshiba.h
tpm.h
tpm_command.h
trace_clock.h
trace_events.h
tracing, perf: Implement BPF programs attached to uprobes
2015-08-06 15:29:14 -03:00
trace_seq.h
tracefs.h
tracehook.h
tracepoint.h
transport_class.h
tsacct_kern.h
tty.h
tty: core: Add tty_debug() for printk(KERN_DEBUG) messages
2015-07-23 18:37:31 -07:00
tty_driver.h
Avoid usb reset crashes by making tty_io cdevs truly dynamic
2015-08-03 15:24:43 -07:00
tty_flip.h
tty_ldisc.h
typecheck.h
types.h
rcu: Create a synchronize_rcu_mult()
2015-07-22 15:27:29 -07:00
u64_stats_sync.h
net: make u64_stats_init() a function
2015-06-15 16:02:52 -07:00
uaccess.h
lib: introduce strncpy_from_unsafe()
2015-08-28 16:27:27 -07:00
ucb1400.h
ucs2_string.h
udp.h
uidgid.h
uinput.h
uio.h
uio_driver.h
uprobes.h
uprobes/x86: Make arch_uretprobe_is_alive(RP_CHECK_CALL) more clever
2015-07-31 10:38:06 +02:00
usb.h
Revert "usb: interface authorization: Declare authorized attribute"
2015-08-18 09:59:12 -07:00
usb_usual.h
usbdevice_fs.h
user-return-notifier.h
user.h
user_namespace.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
vm_sockets.h
vmacache.h
vmalloc.h
vme.h
vme: export vme_check_window()
2015-06-12 17:26:57 -07:00
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
md updates for 4.2
2015-06-29 11:10:56 -07:00
wanrouter.h
watchdog.h
watchdog: watchdog_core: Add watchdog registration deferral mechanism
2015-06-29 11:51:06 +02:00
wireless.h
wl12xx.h
wm97xx.h
workqueue.h
workqueue: fix some docbook warnings
2015-08-17 15:48:24 -04:00
writeback.h
writeback: implement foreign cgroup inode detection
2015-06-02 08:40:20 -06:00
ww_mutex.h
xattr.h
xz.h
yam.h
z2_battery.h
zbud.h
zconf.h
zlib.h
zorro.h
zpool.h
zpool: remove zpool_evict()
2015-06-25 17:00:37 -07:00
zsmalloc.h
zutil.h