linux-stable/include/linux
Dave Hansen c4e1be9ec1 mm, sparsemem: break out of loops early
There are a number of times that we loop over NR_MEM_SECTIONS, looking
for section_present() on each section.  But, when we have very large
physical address spaces (large MAX_PHYSMEM_BITS), NR_MEM_SECTIONS
becomes very large, making the loops quite long.

With MAX_PHYSMEM_BITS=46 and a section size of 128MB, the current loops
are 512k iterations, which we barely notice on modern hardware.  But,
raising MAX_PHYSMEM_BITS higher (like we will see on systems that
support 5-level paging) makes this 64x longer and we start to notice,
especially on slower systems like simulators.  A 10-second delay for
512k iterations is annoying.  But, a 640- second delay is crippling.

This does not help if we have extremely sparse physical address spaces,
but those are quite rare.  We expect that most of the "slow" systems
where this matters will also be quite small and non-sparse.

To fix this, we track the highest section we've ever encountered.  This
lets us know when we will *never* see another section_present(), and
lets us break out of the loops earlier.

Doing the whole for_each_present_section_nr() macro is probably
overkill, but it will ensure that any future loop iterations that we
grow are more likely to be correct.

Kirrill said "It shaved almost 40 seconds from boot time in qemu with
5-level paging enabled for me".

Link: http://lkml.kernel.org/r/20170504174434.C45A4735@viggo.jf.intel.com
Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
Tested-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2017-07-06 16:24:31 -07:00
..
amba Merge branch 'topic/pl330' into for-linus 2017-05-04 16:08:52 +05:30
avf virtchnl: Add compile time static asserts to validate structure sizes 2017-06-01 14:26:23 -07:00
bcma scripts/spelling.txt: add regsiter -> register spelling mistake 2017-05-08 17:15:13 -07:00
byteorder
can
ceph libceph: use kbasename() and kill ceph_file_part() 2017-05-23 20:32:10 +02:00
clk
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 hwmon updates for v4.13: 2017-07-04 11:48:27 -07:00
iio Char/Misc patches for 4.13-rc1 2017-07-03 20:55:59 -07:00
input
irqchip KVM: arm/arm64: Fix isues with GICv2 on GICv3 migration 2017-05-24 09:44:07 +02:00
isdn
lockd
mailbox
mfd regulator: Updates for v4.13 2017-07-04 11:55:21 -07:00
mlx4 net/mlx4: Fix the check in attaching steering rules 2017-06-04 23:10:05 -04:00
mlx5 Merge https://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-07-03 03:42:10 -07:00
mmc mmc: slot-gpio: Add support to enable irq wake on cd_irq 2017-06-20 10:30:49 +02:00
mtd Merge remote-tracking branch 'mauro-exp/docbook3' into death-to-docbook 2017-05-18 11:03:08 -06:00
mux mux: minimal mux subsystem 2017-06-03 19:29:26 +09:00
netfilter netfilter: nfnetlink: extended ACK reporting 2017-06-19 19:38:24 +02:00
netfilter_arp
netfilter_bridge netfilter: ebt: Use new helper ebt_invalid_target to check target 2017-06-19 19:09:19 +02:00
netfilter_ipv4
netfilter_ipv6
perf
phy phy: Move ULPI phy header out of drivers to include path 2017-06-01 15:28:27 +05:30
pinctrl Revert "pinctrl: generic: Add bi-directional and output-enable" 2017-05-22 10:39:10 +02:00
platform_data Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2017-07-05 12:31:59 -07:00
power power: supply: bq27xxx: Add power_supply_battery_info support 2017-06-08 17:57:38 +02:00
qed qed: iWARP CM add error handling 2017-07-03 01:43:45 -07:00
raid
regulator regulator: Allow for asymmetric settling times 2017-05-17 10:49:25 +01:00
remoteproc
reset
rpmsg
rtc
sched Merge branch 'work.sys_wait' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2017-07-05 14:10:19 -07:00
soc Actions Semi SoC drivers for 4.13 2017-06-29 17:34:57 +02:00
spi Merge remote-tracking branches 'spi/topic/orion', 'spi/topic/pxa2xx', 'spi/topic/rockchip', 'spi/topic/sh-msiof' and 'spi/topic/sirf' into spi-next 2017-07-03 16:21:10 +01:00
ssb
sunrpc Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2017-07-05 12:31:59 -07:00
ulpi
unaligned
usb Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2017-07-05 12:31:59 -07:00
uwb
wimax
8250_pci.h
a.out.h
acct.h
acpi.h acpi: always include uuid.h 2017-06-08 09:03:33 +02:00
acpi_dma.h
acpi_iort.h ACPI/IORT: Remove iort_node_match() 2017-06-15 11:41:37 +01: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
arch_topology.h arm,arm64,drivers: add a prefix to drivers arch_topology interfaces 2017-06-03 19:10:09 +09:00
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: implement SECURITY PROTOCOL IN/OUT 2017-06-05 15:29:22 -04:00
ata_platform.h
atalk.h
ath9k_platform.h
atm.h
atm_suni.h
atm_tcp.h
atmdev.h net, atm: convert atm_dev.refcnt from atomic_t to refcount_t 2017-07-04 22:35:16 +01:00
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
backing-dev.h percpu_counter: Rename __percpu_counter_add to percpu_counter_add_batch 2017-06-20 15:42:32 -04:00
backlight.h
badblocks.h
balloon_compaction.h
bcd.h
bch.h
bcm47xx_nvram.h bcm47xx: Fix build regression 2017-06-08 18:52:36 -07:00
bcm47xx_sprom.h
bcm47xx_wdt.h
bcm963xx_nvram.h
bcm963xx_tag.h
bfin_mac.h
binfmts.h
bio.h Merge branch 'for-4.13/block' of git://git.kernel.dk/linux-block 2017-07-03 10:34:51 -07:00
bit_spinlock.h
bitfield.h
bitmap.h
bitops.h
bitrev.h
blk-cgroup.h percpu_counter: Rename __percpu_counter_add to percpu_counter_add_batch 2017-06-20 15:42:32 -04:00
blk-mq-pci.h
blk-mq-virtio.h
blk-mq.h Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-07-03 13:08:04 -07:00
blk_types.h block: add support for write hints in a bio 2017-06-27 12:05:27 -06:00
blkdev.h block: remove the queue_bounce_pfn helper 2017-06-27 12:13:45 -06:00
blkpg.h
blktrace_api.h
blockgroup_lock.h
bma150.h
bootmem.h
bottom_half.h
bpf-cgroup.h bpf: BPF support for sock_ops 2017-07-01 16:15:13 -07:00
bpf.h bpf: simplify narrower ctx access 2017-07-03 02:22:52 -07:00
bpf_trace.h
bpf_types.h bpf: BPF support for sock_ops 2017-07-01 16:15:13 -07:00
bpf_verifier.h bpf: possibly avoid extra masking for narrower load in verifier 2017-06-23 14:04:11 -04: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
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: implement "nsdelegate" mount option 2017-06-28 14:45:21 -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 fs: switch ->s_uuid to uuid_t 2017-06-05 16:59:12 +02:00
clk-provider.h
clk.h
clkdev.h
clock_cooling.h
clockchips.h Revert "clockevents: Add a clkevt-of mechanism like clksrc-of" 2017-06-12 10:54:47 +02:00
clocksource.h Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-07-03 16:14:51 -07:00
cm4000_cs.h
cma.h
cmdline-parser.h
cn_proc.h
cnt32_to_63.h
coda.h
coda_psdev.h
compaction.h
compat.h time: introduce {get,put}_itimerspec64 2017-06-25 21:58:46 -04:00
compiler-clang.h compiler, clang: always inline when CONFIG_OPTIMIZE_INLINING is disabled 2017-07-06 16:24:29 -07:00
compiler-gcc.h compiler, clang: always inline when CONFIG_OPTIMIZE_INLINING is disabled 2017-07-06 16:24:29 -07:00
compiler-intel.h
compiler.h GCC plugin updates: 2017-07-05 11:46:59 -07:00
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_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 coresight: refactor with function of_coresight_get_cpu 2017-06-09 11:45:25 +02:00
count_zeros.h
cper.h efi: parse ARM processor error 2017-06-22 15:43:47 +01:00
cpu.h cpu/hotplug: Convert hotplug locking to percpu rwsem 2017-05-26 10:10:46 +02:00
cpu_cooling.h
cpu_pm.h
cpu_rmap.h
cpufeature.h
cpufreq.h x86: use common aperfmperf_khz_on_cpu() to calculate KHz using APERF/MPERF 2017-06-27 01:47:32 +02:00
cpuhotplug.h Merge branch 'smp-hotplug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-07-03 18:08:06 -07:00
cpuidle.h
cpumask.h smp, cpumask: Use non-atomic cpumask_{set,clear}_cpu() 2017-05-23 10:01:32 +02: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
crc4.h lib: Add crc4 module 2017-06-09 11:52:07 +02:00
crc7.h
crc8.h
crc16.h
crc32.h
crc32c.h
cred.h doc: ReSTify credentials.txt 2017-05-18 10:30:19 -06:00
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 fs: update location of filesystems documentation 2017-05-16 08:44:22 -03:00
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 block: switch bios to blk_status_t 2017-06-09 09:27:32 -06:00
device.h driver core patches for 4.13-rc1 2017-07-03 20:27:48 -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-buf.h
dma-contiguous.h
dma-debug.h
dma-direction.h
dma-fence-array.h
dma-fence.h
dma-iommu.h iommu/dma: Fix function declaration 2017-05-30 11:25:45 +02:00
dma-mapping.h
dma_remapping.h
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 efi/capsule-loader: Use page addresses rather than struct page pointers 2017-06-05 17:50:41 +02:00
efs_vh.h
eisa.h
elevator.h blk-mq-sched: unify request prepare methods 2017-06-18 10:08:55 -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 sched/wait: Rename wait_queue_t => wait_queue_entry_t 2017-06-20 12:18:27 +02:00
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
fd.h
fddidevice.h
fdtable.h
fec.h
file.h
filter.h include/linux/filter.h: use linux/set_memory.h 2017-07-06 16:24:30 -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
frame.h
freezer.h
frontswap.h
fs.h Merge branch 'work.read_write' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2017-07-05 14:35:57 -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 drivers/fsi: expose direct-access slave API 2017-06-09 11:52:08 +02:00
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: remove blk_part_pack_uuid 2017-06-05 16:59:10 +02: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 hashtable: remove repeated phrase from a comment 2017-06-30 13:49:53 -07:00
hdlc.h
hdlcdrv.h
hdmi.h
hid-debug.h
hid-roccat.h
hid-sensor-hub.h iio: hid-sensor-hub: Implement batch mode 2017-05-16 19:44:01 +01:00
hid-sensor-ids.h iio: hid-sensor-hub: Implement batch mode 2017-05-16 19:44:01 +01:00
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 nanosleep: Use get_timespec64() and put_timespec64() 2017-06-30 04:14:14 -04: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 block: introduce new block status code type 2017-06-09 09:27:32 -06:00
idr.h
ieee80211.h ieee80211: update public action codes 2017-06-30 09:47:24 +03:00
ieee802154.h
if_arp.h
if_bridge.h bridge: Export multicast enabled state 2017-05-26 15:18:44 -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 tap: export skb_array 2017-05-18 10:07:41 -04:00
if_team.h team: add macro MODULE_ALIAS_TEAM_MODE for team mode alias 2017-06-02 10:20:49 -04:00
if_tun.h tun: export skb_array 2017-05-18 10:07:40 -04:00
if_tunnel.h
if_vlan.h networking: make skb_push & __skb_push return void pointers 2017-06-16 11:48:40 -04:00
igmp.h net: convert ip_mc_list.refcnt from atomic_t to refcount_t 2017-07-01 07:39:08 -07:00
ihex.h
ima.h ima: define is_ima_appraise_enabled() 2017-06-21 14:37:12 -04:00
in.h
in6.h
inet.h
inet_diag.h
inetdevice.h net: convert in_device.refcnt from atomic_t to refcount_t 2017-07-01 07:39:08 -07:00
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/timings: Add infrastructure for estimating the next interrupt arrival time 2017-06-24 11:44:39 +02: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
ioc3.h
ioc4.h
iocontext.h
iomap.h fs: Introduce IOMAP_NOWAIT 2017-06-20 07:12:03 -06: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 genirq: Introduce IRQD_SINGLE_TARGET flag 2017-06-22 18:21:25 +02:00
irq_cpustat.h
irq_poll.h
irq_work.h
irqbypass.h
irqchip.h
irqdesc.h genirq/debugfs: Add proper debugfs interface 2017-06-22 18:21:13 +02:00
irqdomain.h genirq/irqdomain: Remove auto-recursive hierarchy support 2017-06-22 18:29:34 +02:00
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
kconfig.h
kcore.h
kcov.h
kd.h
kdb.h
kdebug.h
kdev_t.h
kern_levels.h
kernel-page-flags.h
kernel.h init: Introduce SYSTEM_SCHEDULING state 2017-05-23 10:01:38 +02: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 There has been a fair amount of activity in the docs tree this time 2017-07-03 21:13:25 -07: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: support passing in variables for synthetic uevents 2017-05-25 18:30:51 +02:00
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 Revert "ktime: Simplify ktime_compare implementation" 2017-06-26 10:39:40 +02:00
kvm_host.h Second round of KVM Changes for v4.12: 2017-05-10 11:29:23 -07:00
kvm_irqfd.h sched/wait: Rename wait_queue_t => wait_queue_entry_t 2017-06-20 12:18:27 +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-lp3952.h
leds-pca9532.h
leds-regulator.h
leds-tca6507.h
leds.h
leds_pwm.h
lguest.h
lguest_launcher.h
libata.h libata: implement SECURITY PROTOCOL IN/OUT 2017-06-05 15:29:22 -04:00
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
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 llist: Provide a safe version for llist_for_each() 2017-05-23 10:01:33 +02:00
lockdep.h
lockref.h
log2.h
lp.h
lru_cache.h
lsm_audit.h selinux: Add IB Port SMP access vector 2017-05-23 12:28:02 -04:00
lsm_hooks.h Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security 2017-07-05 11:26:35 -07:00
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 phy: micrel: add Microchip KSZ 9477 Switch PHY support 2017-05-31 20:56:31 -04:00
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 net/{mii, smsc}: Make mii_ethtool_get_link_ksettings and smc_netdev_get_ecmd return void 2017-06-05 11:00:42 -04:00
miscdevice.h vhost/vsock: use static minor number 2017-05-18 16:59:06 +02:00
mISDNdsp.h
mISDNhw.h
mISDNif.h networking: introduce and use skb_put_data() 2017-06-16 11:48:37 -04:00
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 mm, x86/mm: Make the batched unmap TLB flush API more generic 2017-05-24 10:18:27 +02:00
mman.h percpu_counter: Rename __percpu_counter_add to percpu_counter_add_batch 2017-06-20 15:42:32 -04:00
mmdebug.h
mmiotrace.h
mmu_context.h
mmu_notifier.h
mmzone.h mm, sparsemem: break out of loops early 2017-07-06 16:24:31 -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 moduleparam: fix doc: hwparam_irq configures an IRQ 2017-07-02 15:37:23 -07:00
mount.h
mpage.h
mpi.h
mpls.h
mpls_iptunnel.h
mroute.h
mroute6.h
msdos_fs.h
msg.h
msi.h
mutex.h mutex, futex: adjust kernel-doc markups to generate ReST 2017-05-16 08:43:25 -03:00
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
mvebu-pmsu.h
mxm-wmi.h
n_r3964.h
namei.h
nd.h libnvdimm: add an atomic vs process context flag to rw_bytes 2017-05-10 21:46:22 -07:00
net.h
netdev_features.h
netdevice.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2017-07-05 12:31:59 -07:00
netfilter.h
netfilter_bridge.h
netfilter_defs.h
netfilter_ingress.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h net: add extack arg to lwtunnel build state 2017-05-30 11:55:32 -04:00
netpoll.h net: convert netpoll_info.refcnt from atomic_t to refcount_t 2017-07-01 07:39:08 -07:00
nfs.h
nfs3.h
nfs4.h
nfs_fs.h
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_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: switch to uuid_t 2017-06-05 16:59:16 +02:00
nvme-rdma.h
nvme.h nvme: use a single NVME_AQ_DEPTH and relax it to 32 2017-06-28 08:14:13 -06: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_mdio: move of_mdio_parse_addr to header file 2017-06-13 14:00:16 -04:00
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 padata: Make padata_alloc() static 2017-05-26 10:10:37 +02:00
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 sched/wait: Rename wait_queue_t => wait_queue_entry_t 2017-06-20 12:18:27 +02:00
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 ACPI: Switch to use generic guid_t in acpi_evaluate_dsm() 2017-06-07 12:20:49 +02:00
pci-aspm.h
pci-ats.h
pci-dma-compat.h
pci-dma.h
pci-ecam.h
pci-ep-cfs.h
pci-epc.h
pci-epf.h
pci.h Power management updates for v4.13-rc1 2017-07-04 13:39:41 -07:00
pci_hotplug.h
pci_ids.h
pcieport_if.h
pda_power.h
pe.h
percpu-defs.h
percpu-refcount.h
percpu-rwsem.h
percpu.h
percpu_counter.h percpu_counter: Rename __percpu_counter_add to percpu_counter_add_batch 2017-06-20 15:42:32 -04:00
percpu_ida.h
perf_event.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2017-07-05 12:31:59 -07:00
perf_regs.h
personality.h
pfn.h
pfn_t.h
phonet.h
phy.h net: phy: Add phy loopback support in net phy framework 2017-07-03 02:01:15 -07: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 PM / core: Drop run_wake flag from struct dev_pm_info 2017-06-28 01:52:52 +02:00
pm2301_charger.h
pm_clock.h
pm_domain.h PM / Domains: Allow overriding the ->xlate() callback 2017-06-13 15:15:08 +02:00
pm_opp.h PM / OPP: Add dev_pm_opp_{set|put}_clkname() 2017-06-24 01:41:55 +02:00
pm_qos.h
pm_runtime.h PM / core: Drop run_wake flag from struct dev_pm_info 2017-06-28 01:52:52 +02:00
pm_wakeirq.h
pm_wakeup.h PM / wakeup: Integrate mechanism to abort transitions in progress 2017-05-05 22:54:28 +02:00
pmbus.h hwmon: (pmbus) move header file out of I2C realm 2017-06-11 17:08:19 -07:00
pmem.h
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h
poll.h sched/wait: Rename wait_queue_t => wait_queue_entry_t 2017-06-20 12:18:27 +02:00
posix-clock.h posix-clocks: Remove interval timer facility and mmap/fasync callbacks 2017-06-04 15:40:22 +02:00
posix-timers.h time: introduce {get,put}_itimerspec64 2017-06-25 21:58:46 -04:00
posix_acl.h
posix_acl_xattr.h
power_supply.h power: supply: core: Add power_supply_prop_precharge 2017-06-08 16:29:28 +02:00
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: Populate pstore record->time field 2017-05-31 10:13:44 -07:00
pstore_ram.h
pti.h
ptp_classify.h
ptp_clock_kernel.h
ptr_ring.h ptr_ring: introduce batch dequeuing 2017-05-18 10:07:40 -04:00
ptrace.h m68k updates for 4.13 2017-07-03 15:12:52 -07:00
purgatory.h
pvclock_gtod.h
pwm.h
pwm_backlight.h
pxa2xx_ssp.h spi: pxa2xx: Add support for Intel Cannonlake 2017-06-06 20:01:15 +01:00
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 ras: mark stub functions as 'inline' 2017-06-29 10:48:57 +01:00
ratelimit.h
rational.h
rbtree.h
rbtree_augmented.h
rbtree_latch.h
rcu_node_tree.h rcu: Flag need for rcu_node_tree.h and rcu_segcblist.h visibility 2017-06-08 18:52:26 -07:00
rcu_segcblist.h rcu: Flag need for rcu_node_tree.h and rcu_segcblist.h visibility 2017-06-08 18:52:26 -07:00
rcu_sync.h
rculist.h
rculist_bl.h
rculist_nulls.h
rcupdate.h rcu: Remove #ifdef moving rcu_end_inkernel_boot from rcupdate.h 2017-06-08 18:52:40 -07:00
rcupdate_wait.h
rcutiny.h rcu: Remove #ifdef moving rcu_end_inkernel_boot from rcupdate.h 2017-06-08 18:52:40 -07:00
rcutree.h rcu: Remove #ifdef moving rcu_end_inkernel_boot from rcupdate.h 2017-06-08 18:52:40 -07:00
rcuwait.h
reboot-mode.h power: reset: reboot-mode: Make include file global 2017-06-08 18:18:19 +02:00
reboot.h
reciprocal_div.h
refcount.h locking/refcount: Remove the half-implemented refcount_sub() API 2017-07-02 11:24:36 +02:00
regmap.h Merge remote-tracking branches 'regmap/topic/1wire', 'regmap/topic/irq' and 'regmap/topic/lzo' into regmap-next 2017-07-03 16:20:28 +01:00
regset.h
relay.h
remoteproc.h
reservation.h
reset-controller.h
reset.h
resource.h wait4(2)/waitid(2): separate copying rusage to userland 2017-05-21 13:11:00 -04:00
resource_ext.h
restart_block.h time/posix-timers: Move the compat copyouts to the nanosleep implementations 2017-06-14 00:00:42 +02:00
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 rt_mutex: Add lockdep annotations 2017-06-08 10:35:49 +02:00
rtnetlink.h rtnl: Add support for netdev event to link messages 2017-05-27 18:51:41 -04:00
rwlock.h
rwlock_api_smp.h
rwlock_types.h
rwsem-spinlock.h
rwsem.h
rxrpc.h rxrpc: Provide a cmsg to specify the amount of Tx data for a call 2017-06-07 17:15:46 +01:00
s3c_adc_battery.h
sa11x0-dma.h
sbitmap.h
scatterlist.h scatterlist: add sg_zero_buffer() helper 2017-06-15 14:30:14 +02:00
scc.h
sched.h Merge branch 'smp-hotplug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-07-03 18:08:06 -07:00
sched_clock.h
scif.h
scpi_protocol.h firmware: arm_scpi: add support to populate OPPs and get transition latency 2017-06-05 11:14:35 +01:00
screen_info.h
sctp.h sctp: remove the typedef sctp_init_chunk_t 2017-07-01 09:08:42 -07:00
scx200.h
scx200_gpio.h
sdb.h
sdla.h
seccomp.h
securebits.h
security.h Merge branch 'stable-4.13' of git://git.infradead.org/users/pcmoore/selinux into next 2017-06-23 11:55:57 +10:00
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: 8250: Add flag so drivers can avoid THRE probe 2017-05-18 16:19:16 +02:00
serial_max3100.h
serial_pnx8xxx.h
serial_s3c.h
serial_sci.h
serio.h
set_memory.h provide linux/set_memory.h 2017-07-06 16:24:30 -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
shm.h
shmem_fs.h
shrinker.h
signal.h signal: Move copy_siginfo_to_user to <linux/signal.h> 2017-06-04 15:11:46 +02:00
signal_types.h
signalfd.h
siphash.h
sirfsoc_dma.h
sizes.h
skb_array.h skb_array: introduce batch dequeuing 2017-05-18 10:07:40 -04:00
skbuff.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2017-07-05 12:31:59 -07:00
slab.h
slab_def.h
slub_def.h mm/slub.c: wrap kmem_cache->cpu_partial in config CONFIG_SLUB_CPU_PARTIAL 2017-07-06 16:24:30 -07:00
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
smpboot.h
smsc911x.h
smscphy.h
sock_diag.h
socket.h tls: kernel TLS support 2017-06-15 12:12:40 -04:00
sonet.h
sony-laptop.h
sonypi.h
sort.h
sound.h
soundcard.h
spinlock.h atomics: Add header comment so spin_unlock_wait() 2017-06-08 08:25:29 -07:00
spinlock_api_smp.h
spinlock_api_up.h
spinlock_types.h
spinlock_types_up.h
spinlock_up.h
splice.h
spmi.h
sram.h misc: sram-exec: Use aligned fncpy instead of memcpy 2017-05-18 17:37:52 +02:00
srcu.h srcu: Remove Classic SRCU 2017-06-08 18:52:42 -07:00
srcutiny.h srcu: Apply trivial callback lists to shrink Tiny SRCU 2017-06-08 18:52:35 -07:00
srcutree.h srcu: Use rnp->lock wrappers to replace explicit memory barriers 2017-06-08 18:52:38 -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 net-next: stmmac: Add dwmac-sun8i 2017-06-01 14:53:04 -04:00
stmp3xxx_rtc_wdt.h
stmp_device.h
stop_machine.h stop_machine: Provide stop_machine_cpuslocked() 2017-05-26 10:10:36 +02:00
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 sh: superhyway: use dev_groups and not dev_attrs for bus_type 2017-06-09 11:00:46 +02:00
suspend.h ACPI / PM: Ignore spurious SCI wakeups from suspend-to-idle 2017-06-15 00:55:44 +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
sysfs.h sysfs: remove signedness from sysfs_get_dirent 2017-05-25 18:30:51 +02:00
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 TCP TS option (RFC 7323) to 1ms clock 2017-05-17 16:06:01 -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: introduce {get,put}_itimerspec64 2017-06-25 21:58:46 -04:00
time64.h
timecounter.h
timekeeper_internal.h time: Clean up CLOCK_MONOTONIC_RAW time handling 2017-06-20 22:13:59 -07:00
timekeeping.h
timer.h
timerfd.h
timeriomem-rng.h hw_random: timeriomem_rng: Allow setting RNG quality from platform data 2017-06-01 12:55:58 +08:00
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/Serial patches for 4.13-rc1 2017-07-03 20:04:16 -07:00
tty_driver.h
tty_flip.h
tty_ldisc.h
typecheck.h
types.h
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 udp: use a separate rx queue for packet reception 2017-05-16 15:41:29 -04:00
uidgid.h
uinput.h
uio.h
uio_driver.h
uprobes.h
usb.h
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 arm64 updates for 4.13: 2017-07-05 17:09:27 -07:00
uwb.h
verification.h
vermagic.h gcc-plugins: Add the randstruct plugin 2017-06-22 16:15:45 -07:00
vexpress.h
vfio.h sched/wait: Rename wait_queue_t => wait_queue_entry_t 2017-06-20 12:18:27 +02:00
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
vlynq.h
vm_event_item.h mm/vmstat: Make NR_TLB_REMOTE_FLUSH_RECEIVED available even on UP 2017-06-08 09:23:09 +02: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
w1.h w1: Add subsystem kernel public interface 2017-06-09 11:54:54 +02:00
wait.h sched/wait: Disambiguate wq_entry->task_list and wq_head->task_list naming 2017-06-20 12:19:14 +02:00
wait_bit.h sched/wait: Disambiguate wq_entry->task_list and wq_head->task_list naming 2017-06-20 12:19:14 +02:00
wanrouter.h
watchdog.h
win_minmax.h
wireless.h
wkup_m3_ipc.h
wl12xx.h
wm97xx.h
workqueue.h
writeback.h
ww_mutex.h
xattr.h
xz.h
yam.h
z2_battery.h
zbud.h
zconf.h
zlib.h
zorro.h
zpool.h
zsmalloc.h
zutil.h