Linus Torvalds
105ff3cbf2
atomic: remove all traces of READ_ONCE_CTRL() and atomic*_read_ctrl()
...
This seems to be a mis-reading of how alpha memory ordering works, and
is not backed up by the alpha architecture manual. The helper functions
don't do anything special on any other architectures, and the arguments
that support them being safe on other architectures also argue that they
are safe on alpha.
Basically, the "control dependency" is between a previous read and a
subsequent write that is dependent on the value read. Even if the
subsequent write is actually done speculatively, there is no way that
such a speculative write could be made visible to other cpu's until it
has been committed, which requires validating the speculation.
Note that most weakely ordered architectures (very much including alpha)
do not guarantee any ordering relationship between two loads that depend
on each other on a control dependency:
read A
if (val == 1)
read B
because the conditional may be predicted, and the "read B" may be
speculatively moved up to before reading the value A. So we require the
user to insert a smp_rmb() between the two accesses to be correct:
read A;
if (A == 1)
smp_rmb()
read B
Alpha is further special in that it can break that ordering even if the
*address* of B depends on the read of A, because the cacheline that is
read later may be stale unless you have a memory barrier in between the
pointer read and the read of the value behind a pointer:
read ptr
read offset(ptr)
whereas all other weakly ordered architectures guarantee that the data
dependency (as opposed to just a control dependency) will order the two
accesses. As a result, alpha needs a "smp_read_barrier_depends()" in
between those two reads for them to be ordered.
The coontrol dependency that "READ_ONCE_CTRL()" and "atomic_read_ctrl()"
had was a control dependency to a subsequent *write*, however, and
nobody can finalize such a subsequent write without having actually done
the read. And were you to write such a value to a "stale" cacheline
(the way the unordered reads came to be), that would seem to lose the
write entirely.
So the things that make alpha able to re-order reads even more
aggressively than other weak architectures do not seem to be relevant
for a subsequent write. Alpha memory ordering may be strange, but
there's no real indication that it is *that* strange.
Also, the alpha architecture reference manual very explicitly talks
about the definition of "Dependence Constraints" in section 5.6.1.7,
where a preceding read dominates a subsequent write.
Such a dependence constraint admittedly does not impose a BEFORE (alpha
architecture term for globally visible ordering), but it does guarantee
that there can be no "causal loop". I don't see how you could avoid
such a loop if another cpu could see the stored value and then impact
the value of the first read. Put another way: the read and the write
could not be seen as being out of order wrt other cpus.
So I do not see how these "x_ctrl()" functions can currently be necessary.
I may have to eat my words at some point, but in the absense of clear
proof that alpha actually needs this, or indeed even an explanation of
how alpha could _possibly_ need it, I do not believe these functions are
called for.
And if it turns out that alpha really _does_ need a barrier for this
case, that barrier still should not be "smp_read_barrier_depends()".
We'd have to make up some new speciality barrier just for alpha, along
with the documentation for why it really is necessary.
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Paul E McKenney <paulmck@us.ibm.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2015-11-03 17:22:17 -08:00
..
amba
ARM: 8446/1: amba: Remove unused callbacks for legacy system PM
2015-10-19 17:08:32 +01: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: advertise support for keepalive2
2015-09-17 20:14:27 +03:00
clk
ARM: SoC driver updates for v4.3
2015-09-01 13:00:04 -07:00
crush
decompress
dma
extcon
fsl /bestcomm
gpio
gpiolib: provide generic request/free implementations
2015-10-16 22:11:16 +02:00
hsi
i2c
Input: atmel_mxt_ts - use deep sleep mode when stopped
2015-08-04 17:03:52 -07:00
iio
iio: Add inverse unit conversion macros
2015-08-08 12:50:40 +01:00
input
irqchip
irqchip/gic: Get rid of gic_init_bases()
2015-10-13 19:01:24 +02:00
isdn
lockd
mfd
sound updates for 4.3-rc1
2015-09-04 11:46:02 -07:00
mlx4
Changes for 4.3
2015-09-09 08:33:31 -07:00
mlx5
IB/mlx5: Remove support for IB_DEVICE_LOCAL_DMA_LKEY
2015-09-25 10:46:51 -04:00
mmc
mmc: mmc: extend the mmc_send_tuning()
2015-10-27 10:38:41 +01:00
mtd
arch, drivers: don't include <asm/io.h> directly, use <linux/io.h> instead
2015-08-10 23:07:05 -04:00
netfilter
netfilter: nf_conntrack: make nf_ct_zone_dflt built-in
2015-09-02 16:32:56 -07:00
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
perf
arm: perf: factor arm_pmu core out to drivers
2015-07-31 15:01:14 +01:00
phy
pinctrl
drivers/pinctrl: Add the concept of an "init" state
2015-10-27 11:24:23 +01:00
platform_data
leds: netxbig: add device tree binding
2015-11-03 08:59:25 +01: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
sched
soc
ARM: SoC driver updates for v4.3
2015-09-01 13:00:04 -07:00
spi
spi: fix kernel-doc warnings in spi.h
2015-09-16 20:44:47 +01: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: renesas_usbhs: fix build warning if 64-bit architecture
2015-09-30 11:21:03 -05:00
uwb
wimax
8250_pci.h
a.out.h
acct.h
acpi.h
acpi/gsi: Add acpi_set_irq_model to initialize the GSI layer
2015-10-13 19:01:24 +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
ASN.1: Handle 'ANY OPTIONAL' in grammar
2015-08-05 13:38:07 +01:00
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
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: implement audit by executable
2015-08-06 16:17:25 -04:00
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: bdi_writeback iteration must not skip dying ones
2015-10-12 10:31:12 -06:00
backing-dev.h
block: don't release bdi while request_queue has live references
2015-10-15 09:53:28 -06:00
backlight.h
balloon_compaction.h
basic_mmio_gpio.h
gpio: generic: support input-only chips
2015-07-27 15:01:05 +02:00
bcd.h
bch.h
bcm47xx_nvram.h
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
blkcg: fix incorrect read/write sync/async stat accounting
2015-10-27 15:04:56 +09:00
blk-iopoll.h
blk-mq.h
blk-mq: factor out a helper to iterate all tags for a request_queue
2015-10-01 10:10:57 +02:00
blk_types.h
Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs
2015-09-03 12:28:30 -07:00
blkdev.h
blk-mq: fix sysfs registration/unregistration race
2015-09-29 11:32:45 -06:00
blktrace_api.h
blockgroup_lock.h
bma150.h
bootmem.h
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
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
Revert "sched, cgroup: replace signal_struct->group_rwsem with a global percpu_rwsem"
2015-09-16 11:51:12 -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
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: 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 unused set_mode() callback
2015-09-14 11:00:55 +02:00
clocksource.h
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
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
Revert "Merge branch 'ipv6-overflow-arith'"
2015-10-29 07:01:48 -07:00
compiler-intel.h
compiler.h
atomic: remove all traces of READ_ONCE_CTRL() and atomic*_read_ctrl()
2015-11-03 17:22:17 -08: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
console_struct.h
consolemap.h
container.h
context_tracking.h
context_tracking_state.h
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
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
cpufeature: correctly annotate the module init function
2015-07-22 09:58:02 +02:00
cpufreq-dt.h
cpufreq.h
cpufreq: acpi-cpufreq: Use cpufreq_cpu_get_raw() in ->get()
2015-09-16 02:17:49 +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
capabilities: ambient capabilities
2015-09-04 16:54:41 -07:00
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
dax.h
dax: add huge page fault support
2015-09-08 15:35:28 -07:00
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
debugfs: Export bool read/write functions
2015-07-20 18:44:50 +01: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
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
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-mapping.h
dma_remapping.h
dmaengine.h
dmaengine: Stricter legacy checking in dma_request_slave_channel_compat()
2015-08-20 12:01:03 +05:30
dmapool.h
mm: add dma_pool_zalloc() call to DMA API
2015-09-08 15:35:28 -07:00
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
EDAC: Carve out debugfs functionality
2015-09-22 12:29:46 +02: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
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
f2fs: add annotation for space utilization of regular/inline dentry
2015-08-21 22:45:13 -07:00
f75375s.h
falloc.h
fanotify.h
fault-inject.h
fb.h
fbdev: fix cea_modes array size
2015-08-20 10:20:11 +03: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: 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
fs.h
dax: move DAX-related functions to a new header
2015-09-08 15:35:28 -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
fsl_ifc: Change IO accessor based on endianness
2015-08-07 22:59:34 -05:00
fsldma.h
fsnotify.h
fsnotify_backend.h
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2015-09-05 20:34:28 -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
irqdomain: Add a fwnode_handle allocator
2015-10-13 19:01:24 +02:00
gameport.h
gcd.h
genalloc.h
genalloc: add support of multiple gen_pools per device
2015-09-04 16:54:41 -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: use numa_mem_id() in alloc_pages_node()
2015-09-08 15:35:28 -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
htcpld.h
htirq.h
huge_mm.h
dax: don't use set_huge_zero_page()
2015-09-08 15:35:28 -07:00
hugetlb.h
hugetlbfs: add hugetlbfs_fallocate()
2015-09-08 15:35:28 -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
i2c: core: Add support for best effort block read emulation
2015-08-24 14:05:19 +02:00
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
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
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
inet_lro.h
inetdevice.h
init.h
init_ohci1394_dma.h
init_task.h
posix_cpu_timer: Reduce unnecessary sighand lock contention
2015-10-15 11:23:41 +02:00
initrd.h
inotify.h
input-polldev.h
input.h
integrity.h
intel-iommu.h
iommu/vt-d: Split up iommu->domains array
2015-08-12 16:23:33 +02: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
arch, drivers: don't include <asm/io.h> directly, use <linux/io.h> instead
2015-08-10 23:07:05 -04:00
io.h
add devm_memremap_pages
2015-08-27 19:40:58 -04: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
iommu: iova: Move iova cache management to the iova library
2015-07-28 15:47:58 +01:00
ip.h
ipack.h
ipc.h
ipc_namespace.h
ipmi-fru.h
ipmi.h
ipmi_smi.h
ipmi: Don't flush messages in sender() in run-to-completion mode
2015-09-03 15:02:28 -05:00
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
genirq: Add flag to force mask in disable_irq[_nosync]()
2015-10-11 11:33:42 +02:00
irq_cpustat.h
irq_work.h
irqchip.h
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
Pretty much all bug fixes and clean ups for 4.3, after a lot of
2015-09-03 12:52:19 -07:00
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
locking/static_keys: Fix up the static keys documentation
2015-09-15 07:12:06 +02:00
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
kernfs: implement kernfs_path_len()
2015-08-18 15:49:15 -07:00
kexec.h
kexec: split kexec_load syscall from kexec core code
2015-09-10 13:29:01 -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
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
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
kernel/kthread.c:kthread_create_on_node(): clarify documentation
2015-09-04 16:54:41 -07:00
ktime.h
kvm_host.h
KVM: make halt_poll_ns per-vCPU
2015-09-06 16:27:10 +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
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, pmem: direct map legacy pmem by default
2015-08-28 23:40:05 -04:00
libps2.h
license.h
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
locking, include/llist: Use linux/atomic.h instead of asm/cmpxchg.h
2015-08-12 11:59:08 +02:00
lockdep.h
lockref.h
log2.h
lp.h
lru_cache.h
lsm_audit.h
security: add ioctl specific auditing to lsm_audit
2015-07-13 13:31:58 -04:00
lsm_hooks.h
Yama: remove needless CONFIG_SECURITY_YAMA_STACKED
2015-07-28 13:18:19 +10:00
lz4.h
lzo.h
m48t86.h
mailbox_client.h
mailbox_controller.h
mailbox: switch to hrtimer for tx_complete polling
2015-08-10 14:29:27 +05:30
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
mem-hotplug: handle node hole when initializing numa_meminfo.
2015-09-08 15:35:28 -07:00
memcontrol.h
writeback: fix incorrect calculation of available memory for memcg domains
2015-10-12 10:31:13 -06:00
memory.h
memory_hotplug.h
mm: ZONE_DEVICE for "device memory"
2015-08-27 19:40:58 -04:00
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.h
memcg: fix dirty page migration
2015-10-01 21:42:35 -04:00
mm_inline.h
mm_types.h
mm: drop __nocast from vm_flags_t definition
2015-09-08 15:35:28 -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: introduce idle page tracking
2015-09-10 13:29:01 -07:00
mmzone.h
libnvdimm for 4.3:
2015-09-08 14:35:59 -07:00
mnt_namespace.h
mod_devicetable.h
mod_devicetable: add space before */
2015-08-07 15:03:42 +02:00
module.h
moduleloader.h
moduleparam.h
mount.h
mpage.h
mpi.h
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: Allow the MSI domain to be device-specific
2015-10-16 13:07:16 +01: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
net.h
net_dbg_ratelimited: turn into no-op when !DEBUG
2015-08-06 23:51:30 -07:00
netdev_features.h
netdevice.h
openvswitch: Fix egress tunnel info.
2015-10-22 19:39:25 -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_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
pnfs: move common blocklayout XDR defintions to nfs4.h
2015-08-17 13:22:49 -05:00
nfs_fs.h
NFS: Remove nfs_release()
2015-08-17 13:32:56 -05:00
nfs_fs_i.h
nfs_fs_sb.h
NFS: Get suppattr_exclcreat when getting server capabilities
2015-08-27 19:45:27 -04:00
nfs_iostat.h
nfs_page.h
nfs_xdr.h
NFSv4: Express delegation limit in units of pages
2015-09-07 12:36:13 -04:00
nfsacl.h
nilfs2_fs.h
nl802154.h
nls.h
nmi.h
Merge branch 'nmi' of git://ftp.arm.linux.org.uk/~rmk/linux-arm
2015-09-08 12:28:10 -07:00
node.h
nodemask.h
notifier.h
ns_common.h
nsc_gpio.h
nsproxy.h
ntb.h
NTB: Fix documentation for ntb_peer_db_clear.
2015-09-07 15:17:09 -04:00
ntb_transport.h
NTB: Add flow control to the ntb_netdev
2015-09-07 15:17:08 -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
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/platform: add function to populate default bus
2015-08-25 11:29:55 -05:00
of_reserved_mem.h
oid_registry.h
PKCS#7: Add OIDs for sha224, sha284 and sha512 hash algos and use them
2015-09-01 09:59:20 +10:00
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
oom.h
mm, oom: add description of struct oom_control
2015-09-08 15:35:28 -07:00
openvswitch.h
oprofile.h
osq_lock.h
oxu210hp.h
padata.h
page-flags-layout.h
page-flags.h
mm: introduce idle page tracking
2015-09-10 13:29:01 -07:00
page-isolation.h
mm, page_isolation: make set/unset_migratetype_isolate() file-local
2015-09-08 15:35:28 -07:00
page_counter.h
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
mm/page_owner: set correct gfp_mask on page_owner
2015-07-17 16:39:54 -07:00
pageblock-flags.h
pagemap.h
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
pci: mm: add pci_pool_zalloc() call
2015-09-08 15:35:28 -07:00
pci_hotplug.h
pci_ids.h
[media] tw68: Move PCI vendor and device IDs to pci_ids.h
2015-08-16 13:26:01 -03: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
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: 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
phy: add phy_device_remove()
2015-09-24 23:04:53 -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
plist.h
pm-trace.h
pm.h
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_get_suspend_opp() helper
2015-09-09 02:20:39 +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
x86, pmem: clarify that ARCH_HAS_PMEM_API implies PMEM mapped WB
2015-08-27 19:40:59 -04:00
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
preempt.h
sched/preempt: Fix cond_resched_lock() and cond_resched_softirq()
2015-08-03 12:21:24 +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
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
psci.h
arm64: psci: factor invocation code to drivers
2015-08-03 12:33:39 +01:00
pstore.h
pstore_ram.h
pti.h
ptp_classify.h
ptp_clock_kernel.h
ptrace.h
seccomp: add ptrace options for suspend/resume
2015-07-15 11:52:52 -07:00
pvclock_gtod.h
pwm.h
pwm: Clean up kerneldoc
2015-08-17 15:40:20 +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
quota: Propagate error from ->acquire_dquot()
2015-07-23 20:59:10 +02: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_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
reset: Add (devm_)reset_control_get stub functions
2015-09-01 09:56:58 +02:00
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
mm: send one IPI per CPU to TLB flush all entries after unmapping pages
2015-09-04 16:54:41 -07:00
rndis.h
root_dev.h
rotary_encoder.h
rpmsg.h
rslib.h
rtc-ds2404.h
rtc-v3020.h
rtc.h
rtmutex.h
rtnetlink.h
rwlock.h
rwlock_api_smp.h
rwlock_types.h
rwsem-spinlock.h
rwsem.h
rxrpc.h
s3c_adc_battery.h
sa11x0-dma.h
scatterlist.h
lib: scatterlist: add sg splitting function
2015-08-24 14:28:01 -06:00
scc.h
sched.h
Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2015-11-03 15:40:38 -08:00
sched_clock.h
scif.h
screen_info.h
sctp.h
scx200.h
scx200_gpio.h
sdb.h
sdla.h
seccomp.h
seccomp: swap hard-coded zeros to defined name
2015-07-15 11:52:54 -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
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
Input: i8042 - add unmask_kbd_data option
2015-07-16 10:30:55 -07:00
sfi.h
sfi_acpi.h
sh_clk.h
sh_dma.h
sh_eth.h
sh_intc.h
sh_timer.h
shdma-base.h
dmaengine: shdma: Make dummy shdma_chan_filter() always return false
2015-08-05 08:48:00 +05:30
shm.h
shmem_fs.h
shrinker.h
signal.h
signalfd.h
sirfsoc_dma.h
sizes.h
skbuff.h
skbuff: Fix skb checksum partial check.
2015-09-29 16:48:46 -07:00
slab.h
slab: infrastructure for bulk object allocation and freeing
2015-09-04 16:54:41 -07:00
slab_def.h
slub_def.h
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
smpboot.h
smpboot: allow passing the cpumask on per-cpu thread registration
2015-09-04 16:54:41 -07: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
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
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
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
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
svga.h
sw842.h
swab.h
swap.h
mm: swap: zswap: maybe_preload & refactoring
2015-09-08 15:35:28 -07:00
swap_cgroup.h
swapfile.h
swapops.h
mm/hwpoison: fix race between soft_offline_page and unpoison_memory
2015-09-08 15:35:28 -07:00
swiotlb.h
sxgbe_platform.h
synclink.h
sys.h
sys_soc.h
syscalls.h
sys_membarrier(): system-wide memory barrier (generic, x86)
2015-09-11 15:21:34 -07:00
syscore_ops.h
sysctl.h
sysfs.h
syslog.h
sysrq.h
sysv_fs.h
t10-pi.h
task_io_accounting.h
task_io_accounting_ops.h
task_work.h
taskstats_kern.h
tboot.h
tc.h
tca6416_keypad.h
tcp.h
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
Revert "ti-st: add device tree support"
2015-08-05 13:24:12 -07:00
tick.h
nohz: Affine unpinned timers to housekeepers
2015-09-02 10:33:22 +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
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_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
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
userfaultfd_k.h
userfaultfd: mcopy_atomic|mfill_zeropage: UFFDIO_COPY|UFFDIO_ZEROPAGE preparation
2015-09-04 16:54:41 -07:00
util_macros.h
uts.h
utsname.h
uuid.h
uwb.h
verify_pefile.h
PKCS#7: Appropriately restrict authenticated attributes and content type
2015-08-12 17:01:01 +01:00
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
mm: get rid of 'vmalloc_info' from /proc/meminfo
2015-11-01 17:09:15 -08: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
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
kernel/watchdog: move NMI function header declarations from watchdog.h to nmi.h
2015-09-04 16:54:41 -07:00
wireless.h
wl12xx.h
wm97xx.h
workqueue.h
workqueue: fix some docbook warnings
2015-08-17 15:48:24 -04:00
writeback.h
ww_mutex.h
xattr.h
xz.h
yam.h
z2_battery.h
zbud.h
mm: zbud: constify the zbud_ops
2015-09-08 15:35:28 -07:00
zconf.h
zlib.h
zorro.h
zpool.h
zpool: add zpool_has_pool()
2015-09-10 13:29:01 -07:00
zsmalloc.h
zsmalloc: account the number of compacted pages
2015-09-08 15:35:28 -07:00
zutil.h