Jiong Wang
06ae48269d
lib: reciprocal_div: implement the improved algorithm on the paper mentioned
...
The new added "reciprocal_value_adv" implements the advanced version of the
algorithm described in Figure 4.2 of the paper except when
"divisor > (1U << 31)" whose ceil(log2(d)) result will be 32 which then
requires u128 divide on host. The exception case could be easily handled
before calling "reciprocal_value_adv".
The advanced version requires more complex calculation to get the
reciprocal multiplier and other control variables, but then could reduce
the required emulation operations.
It makes no sense to use this advanced version for host divide emulation,
those extra complexities for calculating multiplier etc could completely
waive our saving on emulation operations.
However, it makes sense to use it for JIT divide code generation (for
example eBPF JIT backends) for which we are willing to trade performance of
JITed code with that of host. As shown by the following pseudo code, the
required emulation operations could go down from 6 (the basic version) to 3
or 4.
To use the result of "reciprocal_value_adv", suppose we want to calculate
n/d, the C-style pseudo code will be the following, it could be easily
changed to real code generation for other JIT targets.
struct reciprocal_value_adv rvalue;
u8 pre_shift, exp;
// handle exception case.
if (d >= (1U << 31)) {
result = n >= d;
return;
}
rvalue = reciprocal_value_adv(d, 32)
exp = rvalue.exp;
if (rvalue.is_wide_m && !(d & 1)) {
// floor(log2(d & (2^32 -d)))
pre_shift = fls(d & -d) - 1;
rvalue = reciprocal_value_adv(d >> pre_shift, 32 - pre_shift);
} else {
pre_shift = 0;
}
// code generation starts.
if (imm == 1U << exp) {
result = n >> exp;
} else if (rvalue.is_wide_m) {
// pre_shift must be zero when reached here.
t = (n * rvalue.m) >> 32;
result = n - t;
result >>= 1;
result += t;
result >>= rvalue.sh - 1;
} else {
if (pre_shift)
result = n >> pre_shift;
result = ((u64)result * rvalue.m) >> 32;
result >>= rvalue.sh;
}
Signed-off-by: Jiong Wang <jiong.wang@netronome.com>
Reviewed-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
2018-07-07 01:45:31 +02:00
..
amba
avf
virtchnl: Whitespace and parenthesis cleanup
2018-05-14 07:05:16 -07:00
bcma
byteorder
can
ceph
libceph: allocate the locator string with GFP_NOFAIL
2018-06-04 20:46:00 +02:00
clk
clk: davinci: Fix link errors when not all SoCs are enabled
2018-05-30 12:48:49 -07:00
crush
decompress
dma
dmaengine: sprd: Add Spreadtrum DMA configuration
2018-05-29 10:15:33 +05:30
dsa
extcon
firmware /meson
fpga
fpga: use SPDX
2018-05-25 18:23:56 +02:00
fsl
ptp: support DPAA FMan 1588 timer in ptp_qoriq
2018-06-26 22:15:14 +09:00
gpio
gpio: Remove VLA from gpiolib
2018-05-23 14:01:03 +02:00
hsi
iio
iio: buffer: fix the function signature to match implementation
2018-06-24 14:23:21 +01:00
input
Input: make input_report_slot_state() return boolean
2018-06-11 10:21:06 -07:00
irqchip
irqchip/gic-v3: Add support for Message Based Interrupts as an MSI controller
2018-05-13 15:59:01 +02:00
isdn
isdn: replace ->proc_fops with ->proc_show
2018-05-16 07:24:30 +02:00
lockd
mailbox
mfd
- Core Frameworks
2018-06-11 07:23:19 -07:00
mlx4
mlx5
net/mlx5: E-Switch, Avoid setup attempt if not being e-switch manager
2018-06-26 15:26:29 -07:00
mmc
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2018-06-06 18:39:49 -07:00
mtd
MTD changes:
2018-06-08 10:39:20 -07:00
mux
netfilter
Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf
2018-06-11 14:24:32 -07:00
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
perf
arm_pmu: simplify arm_pmu::handle_irq
2018-05-21 18:07:05 +01:00
phy
phy: add 2.5G SGMII mode to the phy_mode enum
2018-05-17 16:11:39 -04:00
pinctrl
platform_data
Solve a series of broken links for files under Documentation:
2018-06-17 05:25:18 +09:00
power
qed
qed*: Utilize FW 8.37.2.0
2018-06-05 10:48:09 -04:00
raid
regulator
regulator: gpio: Revert
2018-06-07 14:23:08 +01:00
remoteproc
reset
rpmsg
rpmsg: glink: Switch to SPDX license identifier
2018-06-03 17:37:15 -07:00
rtc
sched
lockdep: fix fs_reclaim annotation
2018-06-07 17:34:35 -07:00
soc
ARM: SoC: late updates
2018-06-11 18:19:45 -07:00
soundwire
spi
ssb
sunrpc
NFS client updates for Linux 4.18
2018-06-12 10:09:03 -07:00
ulpi
unaligned
usb
sound updates for 4.18
2018-06-06 09:08:38 -07:00
uwb
wimax
8250_pci.h
a.out.h
acct.h
acpi.h
acpi: Add helper for deactivating memory region
2018-06-25 21:30:12 +08:00
acpi_dma.h
acpi_iort.h
acpi_pmtmr.h
adb.h
adfs_fs.h
aer.h
PCI/DPC: Use the generic pcie_do_fatal_recovery() path
2018-06-02 19:29:27 -05:00
agp_backend.h
agpgart.h
ahci-remap.h
ahci_platform.h
aio.h
aio: simplify KIOCB_KEY handling
2018-05-26 09:16:44 +02:00
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-cci.h
arm-smccc.h
arm64: Call ARCH_WORKAROUND_2 on transitions between EL0 and EL1
2018-05-31 17:34:01 +01:00
arm_sdei.h
asn1.h
asn1_ber_bytecode.h
asn1_decoder.h
assoc_array.h
docs: Fix some broken references
2018-06-15 18:10:01 -03:00
assoc_array_priv.h
docs: Fix some broken references
2018-06-15 18:10:01 -03:00
async.h
async_tx.h
ata.h
ata_platform.h
atalk.h
proc: introduce proc_create_seq_private
2018-05-16 07:23:35 +02:00
ath9k_platform.h
atm.h
atm_suni.h
atm_tcp.h
atmdev.h
atm: Preserve value of skb->truesize when accounting to vcc
2018-06-17 08:27:01 +09:00
atmel-mci.h
atmel-ssc.h
atmel_pdc.h
atmel_tc.h
atomic.h
attribute_container.h
audit.h
audit: use inline function to set audit context
2018-05-14 17:45:21 -04:00
auto_dev-ioctl.h
auto_fs.h
auxvec.h
average.h
b1pcmcia.h
backing-dev-defs.h
bdi: Fix another oops in wb_workfn()
2018-06-22 12:08:07 -06:00
backing-dev.h
backlight.h
badblocks.h
balloon_compaction.h
bcd.h
bch.h
bcm47xx_nvram.h
bcm47xx_sprom.h
bcm47xx_wdt.h
bcm963xx_nvram.h
bcm963xx_tag.h
binfmts.h
umh: introduce fork_usermode_blob() helper
2018-05-23 13:23:39 -04:00
bio.h
for-linus-20180608
2018-06-08 13:36:19 -07:00
bit_spinlock.h
bitfield.h
bitmap.h
bitops.h
bitrev.h
blk-cgroup.h
blk-mq-pci.h
blk-mq-rdma.h
blk-mq-virtio.h
blk-mq.h
blk-mq: remove blk_mq_tagset_iter
2018-06-14 17:01:45 +02:00
blk_types.h
block: don't use blocking queue entered for recursive bio submits
2018-06-02 20:35:00 -06:00
blkdev.h
block: Fix transfer when chunk sectors exceeds max
2018-06-26 12:18:27 -06:00
blkpg.h
blktrace_api.h
blockgroup_lock.h
bma150.h
bootmem.h
bottom_half.h
bpf-cgroup.h
bpf: fix attach type BPF_LIRC_MODE2 dependency wrt CONFIG_CGROUP_BPF
2018-06-26 11:28:38 +02:00
bpf.h
bpf: fix attach type BPF_LIRC_MODE2 dependency wrt CONFIG_CGROUP_BPF
2018-06-26 11:28:38 +02:00
bpf_lirc.h
bpf: fix attach type BPF_LIRC_MODE2 dependency wrt CONFIG_CGROUP_BPF
2018-06-26 11:28:38 +02:00
bpf_trace.h
bpf_types.h
media: rc: introduce BPF_PROG_LIRC_MODE2
2018-05-30 12:38:40 +02:00
bpf_verifier.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2018-05-26 19:46:15 -04:00
bpfilter.h
net: add skeleton of bpfilter kernel module
2018-05-23 13:23:40 -04:00
brcmphy.h
net: phy: broadcom: Enable 125 MHz clock on LED4 pin for BCM54612E by default.
2018-06-05 09:43:09 -04:00
bsearch.h
bsg-lib.h
block: remove parent device reference from struct bsg_class_device
2018-05-29 13:00:25 -06:00
bsg.h
block: remove parent device reference from struct bsg_class_device
2018-05-29 13:00:25 -06:00
btf.h
btree-128.h
btree-type.h
btree.h
btrfs.h
buffer_head.h
fs: move page_cache_seek_hole_data to iomap.c
2018-06-01 18:37:33 -07:00
bug.h
build_bug.h
bvec.h
c2port.h
cache.h
cacheinfo.h
ACPI / PPTT: fix build when CONFIG_ACPI_PPTT is not enabled
2018-06-05 18:06:24 +01:00
capability.h
cb710.h
cciss_ioctl.h
ccp.h
cdev.h
cdrom.h
cfag12864b.h
cgroup-defs.h
cgroup.h
cgroup_rdma.h
cgroup_subsys.h
circ_buf.h
docs: Fix some broken references
2018-06-15 18:10:01 -03:00
cleancache.h
clk-provider.h
This time we have a good set of changes to the core framework that do some
2018-06-09 12:06:24 -07:00
clk.h
clkdev.h
clock_cooling.h
clockchips.h
clocksource.h
cm4000_cs.h
cma.h
cmdline-parser.h
cn_proc.h
cnt32_to_63.h
coda.h
coda_psdev.h
compaction.h
compat.h
disable -Wattribute-alias warning for SYSCALL_DEFINEx()
2018-06-25 23:21:13 +09:00
compat_time.h
compiler-clang.h
compiler.h: enable builtin overflow checkers and add fallback code
2018-05-31 16:41:41 -07:00
compiler-gcc.h
kbuild: add macro for controlling warnings to linux/compiler.h
2018-06-25 23:21:12 +09:00
compiler-intel.h
compiler.h: enable builtin overflow checkers and add fallback code
2018-05-31 16:41:41 -07:00
compiler.h
branch-check: fix long->int truncation when profiling branches
2018-06-04 17:28:20 -04:00
compiler_types.h
kbuild: add macro for controlling warnings to linux/compiler.h
2018-06-25 23:21:12 +09:00
completion.h
component.h
concap.h
configfs.h
connector.h
console.h
console_struct.h
consolemap.h
const.h
container.h
context_tracking.h
context_tracking_state.h
cordic.h
coredump.h
coresight-pmu.h
coresight-stm.h
coresight.h
coresight: Moving framework and drivers to SPDX identifier
2018-05-14 16:19:59 +02:00
count_zeros.h
cper.h
efi: Decode IA32/X64 Processor Error Section
2018-05-14 08:57:47 +02:00
cpu.h
cpu_cooling.h
cpu_pm.h
cpu_rmap.h
cpufeature.h
cpufreq.h
cpufreq: Rename cpufreq_can_do_remote_dvfs()
2018-05-23 10:37:08 +02:00
cpuhotplug.h
cpuidle.h
cpuidle: governors: Consolidate PM QoS handling
2018-05-30 23:13:00 +02:00
cpumask.h
net: Refactor XPS for CPUs and Rx queues
2018-07-02 09:06:23 +09:00
cpuset.h
crash_core.h
crash_dump.h
vmcore: add API to collect hardware dump in second kernel
2018-05-14 13:46:04 -04:00
crc-ccitt.h
crc-itu-t.h
crc-t10dif.h
crc4.h
crc7.h
crc8.h
crc16.h
crc32.h
crc32c.h
cred.h
crypto.h
cryptohash.h
cs5535.h
ctype.h
cuda.h
cyclades.h
davinci_emac.h
dax.h
include/linux/dax.h: dax_iomap_fault() returns vm_fault_t
2018-06-28 11:16:44 -07:00
dca.h
dcache.h
dccp.h
dcookies.h
debug_locks.h
debugfs.h
debugobjects.h
delay.h
delayacct.h
delayed_call.h
dell-led.h
devcoredump.h
devfreq-event.h
devfreq.h
devfreq_cooling.h
device-mapper.h
dax: Introduce a ->copy_to_iter dax operation
2018-05-22 23:18:31 -07:00
device.h
- Introduce arithmetic overflow test helper functions (Rasmus)
2018-06-06 17:27:14 -07:00
device_cgroup.h
devpts_fs.h
digsig.h
dio.h
dirent.h
dlm.h
dlm_plock.h
dm-bufio.h
dm-dirty-log.h
dm-io.h
dm-kcopyd.h
dm-region-hash.h
dm9000.h
dma-buf.h
dma-contiguous.h
dma-mapping: move all DMA mapping code to kernel/dma
2018-06-14 08:50:37 +02:00
dma-debug.h
dma-direct.h
dma-mapping: provide a generic dma-noncoherent implementation
2018-05-19 08:46:12 +02:00
dma-direction.h
dma-fence-array.h
dma-fence.h
dma-iommu.h
dma-iommu: Fix compilation when !CONFIG_IOMMU_DMA
2018-05-13 15:59:00 +02:00
dma-mapping.h
x86/pci-dma: switch the VIA 32-bit DMA quirk to use the struct device flag
2018-05-28 12:48:25 +02:00
dma-noncoherent.h
dma-mapping: provide a generic dma-noncoherent implementation
2018-05-19 08:46:12 +02:00
dma_remapping.h
dmaengine.h
dmapool.h
dmar.h
dmi.h
dnotify.h
dns_resolver.h
dqblk_qtree.h
dqblk_v1.h
dqblk_v2.h
drbd.h
drbd_genl.h
drbd_genl_api.h
drbd_limits.h
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: Align efi_pci_io_protocol typedefs to type naming convention
2018-05-14 08:57:48 +02:00
efs_vh.h
eisa.h
elevator.h
block: unexport elevator_init/exit
2018-06-01 07:38:16 -06:00
elf-fdpic.h
elf-randomize.h
elf.h
elfcore-compat.h
elfcore.h
elfnote.h
enclosure.h
err.h
errno.h
error-injection.h
errqueue.h
errseq.h
etherdevice.h
net: Convert GRO SKB handling to list_head.
2018-06-26 11:33:04 +09:00
ethtool.h
eventfd.h
eventpoll.h
evm.h
export.h
export.h: remove code for prefixing symbols with underscore
2018-05-17 22:44:57 +09:00
exportfs.h
ext2_fs.h
extable.h
extcon-provider.h
extcon.h
f2fs_fs.h
f75375s.h
falloc.h
fanotify.h
fault-inject.h
fb.h
fbcon.h
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
fec.h
file.h
filter.h
bpf: undo prog rejection on read-only lock failure
2018-06-29 10:47:35 -07:00
fips.h
firewire.h
firmware-map.h
firmware.h
firmware: add firmware_request_nowarn() - load firmware without warnings
2018-05-14 16:44:41 +02:00
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
Revert changes to convert to ->poll_mask() and aio IOCB_CMD_POLL
2018-06-28 10:40:47 -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.h
fscrypt_notsupp.h
f2fs-for-4.18-rc1
2018-06-11 10:16:13 -07:00
fscrypt_supp.h
f2fs-for-4.18-rc1
2018-06-11 10:16:13 -07:00
fsi.h
fsl-diu-fb.h
fsl_devices.h
fsl_hypervisor.h
fsl_ifc.h
fsldma.h
fsnotify.h
fsnotify_backend.h
fsnotify: add fsnotify_add_inode_mark() wrappers
2018-05-18 14:58:22 +02:00
ftrace.h
docs: Fix some broken references
2018-06-15 18:10:01 -03:00
ftrace_irq.h
futex.h
fwnode.h
gameport.h
gcd.h
genalloc.h
genetlink.h
genhd.h
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h
include/linux/gfp.h: fix the annotation of GFP_ZONE_TABLE
2018-06-07 17:34:38 -07:00
glob.h
goldfish.h
gpio-pxa.h
gpio.h
gpio_keys.h
hardirq.h
hash.h
hashtable.h
hdlc.h
hdlcdrv.h
hdmi.h
hid-debug.h
hid-roccat.h
hid-sensor-hub.h
hid-sensor-ids.h
hid.h
Merge branch 'for-4.18/multitouch' into for-linus
2018-06-08 10:25:50 +02:00
hiddev.h
hidraw.h
highmem.h
highuid.h
hil.h
hil_mlc.h
hippidevice.h
hmm.h
mm: add hmm_data to struct page
2018-06-07 17:34:37 -07:00
host1x.h
gpu: host1x: Use not explicitly sized types
2018-05-18 21:51:37 +02:00
hp_sdc.h
hpet.h
hrtimer.h
htcpld.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
hwspinlock/core: Switch to SPDX license identifier
2018-05-24 12:04:32 -07:00
hyperv.h
SCSI misc on 20180610
2018-06-10 13:01:12 -07:00
hypervisor.h
i2c-algo-bit.h
i2c-algo-pca.h
i2c-algo-pcf.h
i2c-dev.h
i2c-mux.h
i2c-pxa.h
i2c-smbus.h
i2c.h
i2c: Export of_i2c_get_board_info()
2018-05-22 13:42:16 +02:00
i8042.h
i8253.h
icmp.h
icmpv6.h
ide.h
dma-mapping updates for 4.18:
2018-06-04 10:58:12 -07:00
idr.h
ieee80211.h
ieee80211: bump IEEE80211_MAX_AMPDU_BUF to support HE
2018-06-18 22:39:39 +02:00
ieee802154.h
if_arp.h
if_bridge.h
net: bridge: add support for port isolation
2018-05-25 14:37:20 -04:00
if_eql.h
if_ether.h
if_fddi.h
if_frad.h
if_link.h
if_ltalk.h
if_macvlan.h
if_phonet.h
if_pppol2tp.h
if_pppox.h
if_tap.h
if_team.h
if_tun.h
if_tunnel.h
if_vlan.h
vlan: use non-archaic spelling of failes
2018-06-03 11:00:52 -04:00
igmp.h
ihex.h
ima.h
imx-media.h
in.h
in6.h
inet.h
inet_diag.h
inetdevice.h
net/ipv4: Add support for specifying metric of connected routes
2018-05-29 10:12:45 -04:00
init.h
init_ohci1394_dma.h
init_task.h
initrd.h
inotify.h
input-polldev.h
input.h
integrity.h
intel-iommu.h
iommu/vt-d: Clean up pasid quirk for pre-production devices
2018-05-15 16:34:52 +02:00
intel-pti.h
intel-svm.h
interrupt.h
softirq/s390: Move default mutators of overwritten softirq mask to s390
2018-05-14 11:25:28 +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
iomap: add an iomap-based bmap implementation
2018-06-01 18:37:33 -07:00
iommu-helper.h
iommu.h
iopoll.h
ioport.h
ioprio.h
fs: aio ioprio add explicit block layer dependence
2018-06-04 14:20:39 -04:00
iova.h
ip.h
ipack.h
ipc.h
rhashtable: split rhashtable.h
2018-06-22 13:43:27 +09:00
ipc_namespace.h
rhashtable: split rhashtable.h
2018-06-22 13:43:27 +09:00
ipmi-fru.h
ipmi.h
ipmi_smi.h
ipv6.h
ipv6_route.h
irq.h
genirq/debugfs: Add missing IRQCHIP_SUPPORTS_LEVEL_MSI debug
2018-06-22 14:22:00 +02:00
irq_cpustat.h
softirq/core: Consolidate default local_softirq_pending() implementations
2018-05-14 11:25:27 +02:00
irq_poll.h
irq_sim.h
irq_work.h
irqbypass.h
irqchip.h
irqdesc.h
irqdesc: Delete irq_desc_get_msi_desc()
2018-06-22 14:22:02 +02:00
irqdomain.h
irqdomain: Let irq_find_host default to DOMAIN_BUS_WIRED
2018-05-13 15:59:00 +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
iversion.h
jbd2.h
jhash.h
jiffies.h
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
vmcore: add API to collect hardware dump in second kernel
2018-05-14 13:46:04 -04:00
kcov.h
sched/core / kcov: avoid kcov_area during task switch
2018-06-15 07:55:24 +09:00
kd.h
kdb.h
kdebug.h
kdev_t.h
kern_levels.h
kernel-page-flags.h
kernel.h
kernel.h: Fix a typo in comment
2018-06-21 17:39:18 +02:00
kernel_stat.h
kernelcapi.h
kernfs.h
kexec.h
key-type.h
key.h
keyboard.h
kfifo.h
kgdb.h
khugepaged.h
klist.h
kmemleak.h
kmod.h
kmsg_dump.h
kobj_map.h
kobject.h
kobject_ns.h
kprobes.h
kref.h
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h
mm/ksm: move [set_]page_stable_node from ksm.h to ksm.c
2018-06-07 17:34:36 -07:00
kthread.h
ktime.h
kvm_host.h
kvm: Make VM ioctl do valloc for some archs
2018-06-01 19:18:26 +02:00
kvm_irqfd.h
kvm_para.h
kvm_types.h
l2tp.h
lapb.h
latencytop.h
lcd.h
lcm.h
led-class-flash.h
led-lm3530.h
leds-bd2802.h
leds-lp3944.h
leds-lp3952.h
leds-pca9532.h
leds-regulator.h
leds-tca6507.h
leds.h
leds_pwm.h
libata.h
SCSI misc on 20180610
2018-06-10 13:01:12 -07:00
libfdt.h
libfdt_env.h
libgcc.h
libnvdimm.h
libps2.h
license.h
lightnvm.h
lightnvm: pass flag on graceful teardown to targets
2018-06-01 07:43:53 -06:00
linkage.h
linux/linkage.h: replace VMLINUX_SYMBOL_STR() with __stringify()
2018-06-13 00:03:17 +09:00
linux_logo.h
lis3lv02d.h
list.h
net: core: another layer of lists, around PF_MEMALLOC skb handling
2018-07-04 14:06:19 +09:00
list_bl.h
list_lru.h
list_nulls.h
list_sort.h
livepatch.h
llc.h
llist.h
lockdep.h
lockref.h
log2.h
logic_pio.h
lp.h
lru_cache.h
lsm_audit.h
lsm_hooks.h
lz4.h
lzo.h
mailbox_client.h
mailbox_controller.h
maple.h
marvell_phy.h
math64.h
max17040_battery.h
mbcache.h
mbus.h
mc6821.h
mc146818rtc.h
mcb.h
mdev.h
mdio-bitbang.h
mdio-gpio.h
mdio-mux.h
mdio.h
net: phy: remove PM ops from MDIO bus
2018-06-05 08:50:16 -04:00
mei_cl_bus.h
mem_encrypt.h
memblock.h
memcontrol.h
mm: fix oom_kill event handling
2018-06-15 07:55:25 +09:00
memfd.h
mm: restructure memfd code
2018-06-07 17:34:35 -07:00
memory.h
x86/platform/UV: Add adjustable set memory block size function
2018-06-21 16:14:45 +02:00
memory_hotplug.h
mm: move is_pageblock_removable_nolock() to mm/memory_hotplug.c
2018-06-07 17:34:36 -07:00
mempolicy.h
mempool.h
mempool: Add mempool_init()/mempool_exit()
2018-05-14 13:14:23 -06:00
memremap.h
libnvdimm for 4.18
2018-06-08 17:21:52 -07:00
memstick.h
mic_bus.h
micrel_phy.h
microchipphy.h
migrate.h
migrate_mode.h
mii.h
miscdevice.h
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm-arch-hooks.h
mm.h
mm: Introduce kvcalloc()
2018-06-12 16:19:22 -07:00
mm_inline.h
mm_types.h
mm: add hmm_data to struct page
2018-06-07 17:34:37 -07:00
mm_types_task.h
mman.h
mmdebug.h
mmiotrace.h
mmu_context.h
mmu_notifier.h
mmzone.h
mnt_namespace.h
mod_devicetable.h
Merge branch 'dmi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging
2018-06-18 13:43:09 +09:00
module.h
moduleloader.h
moduleparam.h
mount.h
mpage.h
mpi.h
lib/mpi: headers cleanup
2018-06-07 17:34:39 -07:00
mpls.h
mpls_iptunnel.h
mroute.h
mroute6.h
mroute_base.h
rhashtable: split rhashtable.h
2018-06-22 13:43:27 +09:00
msdos_fs.h
msg.h
msi.h
genirq/msi: Allow level-triggered MSIs to be exposed by MSI providers
2018-05-13 15:58:59 +02:00
mutex.h
locking/spinlocks: Clean up comment and #ifndef for {,queued_}spin_is_locked()
2018-05-15 08:11:15 +02:00
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
mvebu-pmsu.h
mxm-wmi.h
n_r3964.h
namei.h
afs: Display manually added cells in dynamic root mount
2018-06-15 15:27:09 +01:00
nd.h
net.h
Revert changes to convert to ->poll_mask() and aio IOCB_CMD_POLL
2018-06-28 10:40:47 -07:00
net_dim.h
netdev_features.h
gso: limit udp gso to egress-only virtual devices
2018-05-23 14:48:44 -04:00
netdevice.h
net: limit each hash list length to MAX_GRO_SKBS
2018-07-05 19:20:16 +09:00
netfilter.h
net: ipv4: listified version of ip_rcv
2018-07-04 14:06:20 +09:00
netfilter_bridge.h
netfilter_defs.h
netfilter_ingress.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h
netpoll.h
nfs.h
nfs3.h
nfs4.h
nfs_fs.h
nfs_fs_i.h
nfs_fs_sb.h
pnfs: Add barrier to prevent lgopen using LAYOUTGET during recall
2018-05-31 15:03:11 -04:00
nfs_iostat.h
nfs_page.h
nfs_xdr.h
pNFS/flexfiles: Don't tie up all the rpciod threads in resends
2018-06-19 09:25:27 -04:00
nfsacl.h
nl802154.h
nls.h
nmi.h
node.h
mm/memory_hotplug: fix leftover use of struct page during hotplug
2018-05-25 18:12:11 -07:00
nodemask.h
nospec.h
notifier.h
kernel/SRCU: provide a static initializer
2018-05-30 10:11:34 +02:00
ns_common.h
nsc_gpio.h
nsproxy.h
ntb.h
ntb_transport.h
nubus.h
nubus: Call bus_register unconditionally
2018-05-14 16:27:08 +02:00
numa.h
nvme-fc-driver.h
nvme-fc.h
nvme-rdma.h
nvme.h
nvme.h: add AEN configuration symbols
2018-06-01 14:37:35 +02:00
nvmem-consumer.h
nvmem-provider.h
drivers: nvmem: Export nvmem_add_cells()
2018-05-14 16:20:48 +02:00
nvram.h
of.h
of_address.h
of_clk.h
of_device.h
of_dma.h
of_fdt.h
of_gpio.h
of_graph.h
of_iommu.h
of_irq.h
of_mdio.h
of_net.h
of_pci.h
PCI: Rework of_pci_get_host_bridge_resources() to devm_of_pci_get_host_bridge_resources()
2018-05-30 11:35:13 -05:00
of_pdt.h
of_platform.h
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
mm, oom: fix concurrent munlock and oom reaper unmap, v3
2018-05-11 17:28:45 -07:00
openvswitch.h
oprofile.h
osq_lock.h
overflow.h
overflow.h: Add allocation size calculation helpers
2018-06-05 12:16:51 -07:00
oxu210hp.h
padata.h
page-flags-layout.h
page-flags.h
mm: mark pages in use for page tables
2018-06-07 17:34:37 -07:00
page-isolation.h
page_counter.h
memcg: introduce memory.min
2018-06-07 17:34:36 -07:00
page_ext.h
page_idle.h
page_owner.h
page_ref.h
pageblock-flags.h
pagemap.h
pagevec.h
parman.h
parport.h
parport_pc.h
parser.h
pata_arasan_cf_data.h
patchkey.h
path.h
pch_dma.h
pci-acpi.h
pci-aspm.h
pci-ats.h
pci-dma-compat.h
pci-dma.h
pci-ecam.h
PCI: Add support for unbinding the generic PCI host controller
2018-05-30 11:35:23 -05:00
pci-ep-cfs.h
pci-epc.h
PCI: dwc: Add support for EP mode
2018-05-15 15:51:38 +01:00
pci-epf.h
PCI: endpoint: Create configfs entry for each pci_epf_device_id table entry
2018-05-18 16:40:50 +01:00
pci.h
pci-v4.18-changes
2018-06-07 12:45:58 -07:00
pci_hotplug.h
PCI: hotplug: Add hotplug_is_native()
2018-06-04 12:08:06 -05:00
pci_ids.h
Merge branch 'lorenzo/pci/vmd'
2018-06-06 16:10:45 -05:00
pda_power.h
pe.h
percpu-defs.h
percpu-refcount.h
percpu-rwsem.h
locking/percpu-rwsem: Annotate rwsem ownership transfer by setting RWSEM_OWNER_UNKNOWN
2018-05-16 11:45:16 +02:00
percpu.h
percpu_counter.h
percpu_ida.h
perf_event.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2018-06-06 18:39:49 -07:00
perf_regs.h
personality.h
pfn.h
pfn_t.h
mm: introduce ARCH_HAS_PTE_SPECIAL
2018-06-07 17:34:35 -07:00
phonet.h
phy.h
net: phy: replace bool members in struct phy_device with bit-fields
2018-05-24 15:35:58 -04:00
phy_fixed.h
phy_led_triggers.h
phylink.h
pid.h
pid_namespace.h
pim.h
pipe_fs_i.h
pkeys.h
pktcdvd.h
pktcdvd: convert to bioset_init()/mempool_init()
2018-05-30 15:33:32 -06:00
pl320-ipc.h
platform_device.h
plist.h
pm-trace.h
pm.h
pm2301_charger.h
pm_clock.h
pm_domain.h
PM / Domains: Rename opp_node to np
2018-06-25 09:41:37 +02:00
pm_opp.h
pm_qos.h
pm_runtime.h
Revert "PM / runtime: Fixup reference counting of device link suppliers at probe"
2018-06-12 10:24:13 +02:00
pm_wakeirq.h
pm_wakeup.h
pmbus.h
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h
poll.h
Revert changes to convert to ->poll_mask() and aio IOCB_CMD_POLL
2018-06-28 10:40:47 -07:00
posix-clock.h
posix-timers.h
posix_acl.h
posix_acl_xattr.h
power_supply.h
power: supply: Add fwnode pointer to power_supply_config struct
2018-05-24 18:14:27 +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
proc_fs.h
proc: Add a way to make network proc files writable
2018-05-18 11:46:15 +01:00
proc_ns.h
processor.h
profile.h
projid.h
property.h
device property: Get rid of union aliasing
2018-05-17 12:47:21 +02:00
psci.h
psp-sev.h
crypto: ccp - Add GET_ID SEV command
2018-05-31 00:13:56 +08:00
pstore.h
pstore: Convert internal records to timespec64
2018-06-05 16:57:31 -07:00
pstore_ram.h
pti.h
ptp_classify.h
ptp_clock_kernel.h
ptr_ring.h
ptrace.h
purgatory.h
pvclock_gtod.h
pwm.h
pwm_backlight.h
pxa2xx_ssp.h
pxa168_eth.h
qcom-geni-se.h
qcom_scm.h
qnx6_fs.h
quicklist.h
quota.h
quotaops.h
radix-tree.h
raid_class.h
ramfs.h
random.h
range.h
ras.h
ratelimit.h
rational.h
rbtree.h
rbtree_augmented.h
rbtree: include rcu.h
2018-05-11 17:28:45 -07:00
rbtree_latch.h
rbtree: include rcu.h
2018-05-11 17:28:45 -07:00
rcu_node_tree.h
rcu_segcblist.h
rcu_sync.h
rculist.h
rculist: add list_for_each_entry_from_rcu()
2018-05-31 14:59:19 -04:00
rculist_bl.h
rculist_nulls.h
docs: Fix some broken references
2018-06-15 18:10:01 -03:00
rcupdate.h
rcu: Update documentation of rcu_read_unlock()
2018-06-10 06:14:01 +02:00
rcupdate_wait.h
rcutiny.h
rcu/x86: Provide early rcu_cpu_starting() callback
2018-05-22 16:12:26 -07:00
rcutree.h
rcu/x86: Provide early rcu_cpu_starting() callback
2018-05-22 16:12:26 -07:00
rcuwait.h
reboot-mode.h
reboot.h
reciprocal_div.h
lib: reciprocal_div: implement the improved algorithm on the paper mentioned
2018-07-07 01:45:31 +02:00
refcount.h
locking/refcounts: Implement refcount_dec_and_lock_irqsave()
2018-06-12 23:33:25 +02:00
regmap.h
regmap: add missing prototype for devm_init_slimbus
2018-05-25 18:35:59 +01:00
regset.h
relay.h
remoteproc.h
reservation.h
reset-controller.h
reset.h
resource.h
resource_ext.h
restart_block.h
rfkill.h
rfkill: Fixes and cleanup of kernel-doc in the header file
2018-06-15 13:37:07 +02:00
rhashtable-types.h
rhashtable: remove nulls_base and related code.
2018-06-22 13:43:27 +09:00
rhashtable.h
rhashtable: clean up dereference of ->future_tbl.
2018-06-22 13:43:28 +09:00
ring_buffer.h
ring-buffer: Fix typo in comment
2018-06-04 17:28:20 -04:00
rio.h
rio_drv.h
rio_ids.h
rio_regs.h
rmap.h
rmi.h
Input: synaptics-rmi4 - convert irq distribution to irq_domain
2018-06-05 10:33:35 -07:00
rndis.h
rodata_test.h
root_dev.h
rpmsg.h
rpmsg: Switch to SPDX license identifier
2018-06-03 17:37:11 -07:00
rslib.h
rtc.h
rtc: nvmem: don't return an error when not enabled
2018-05-16 21:08:42 +02:00
rtmutex.h
rtnetlink.h
rtsx_common.h
rtsx_pci.h
rtsx_usb.h
rwlock.h
rwlock_api_smp.h
rwlock_types.h
rwsem-spinlock.h
rwsem.h
locking/percpu-rwsem: Annotate rwsem ownership transfer by setting RWSEM_OWNER_UNKNOWN
2018-05-16 11:45:16 +02:00
s3c_adc_battery.h
sa11x0-dma.h
sbitmap.h
blk-mq: avoid starving tag allocation after allocating process migrates
2018-05-24 11:00:39 -06:00
scatterlist.h
sg: remove ->sg_magic member
2018-06-29 08:48:06 -06:00
scc.h
sched.h
rseq: Avoid infinite recursion when delivering SIGSEGV
2018-06-22 19:04:22 +02:00
sched_clock.h
scif.h
scmi_protocol.h
scpi_protocol.h
screen_info.h
sctp.h
sctp: add support for dscp and flowlabel per transport
2018-07-04 11:36:54 +09:00
scx200.h
scx200_gpio.h
sdb.h
sdla.h
seccomp.h
securebits.h
security.h
sed-opal.h
seg6.h
seg6_genl.h
seg6_hmac.h
seg6_iptunnel.h
seg6_local.h
selection.h
selinux.h
sem.h
semaphore.h
seq_buf.h
seq_file.h
seq_file_net.h
proc: introduce proc_create_net_single
2018-05-16 07:24:30 +02:00
seqlock.h
seqno-fence.h
serdev.h
serial.h
serial_8250.h
serial_bcm63xx.h
serial_core.h
serial_max3100.h
serial_pnx8xxx.h
serial_s3c.h
serial_sci.h
serio.h
set_memory.h
sfi.h
sfi_acpi.h
sfp.h
sh_clk.h
sh_dma.h
sh_eth.h
sh_intc.h
sh_timer.h
sha256.h
shdma-base.h
shm.h
shmem_fs.h
mm: restructure memfd code
2018-06-07 17:34:35 -07:00
shrinker.h
signal.h
signal_types.h
signalfd.h
siox.h
siphash.h
sirfsoc_dma.h
sizes.h
skb_array.h
pfifo_fast: drop unneeded additional lock on dequeue
2018-05-17 12:46:54 -04:00
skbuff.h
Merge ra.kernel.org:/pub/scm/linux/kernel/git/davem/net
2018-07-03 10:29:26 +09:00
slab.h
mm: fix race between kmem_cache destroy, create and deactivate
2018-06-15 07:55:23 +09:00
slab_def.h
slab: clean up the code comment in slab kmem_cache struct
2018-06-07 17:34:34 -07:00
slimbus.h
slub_def.h
slub: fix failure when we delete and create a slab cache
2018-06-28 11:16:44 -07:00
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
smpboot.h
smsc911x.h
smscphy.h
sock_diag.h
socket.h
sonet.h
sony-laptop.h
sonypi.h
sort.h
sound.h
soundcard.h
spinlock.h
atomic: Add irqsave variant of atomic_dec_and_lock()
2018-06-12 23:33:24 +02: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
srcu.h
srcu: Add cleanup_srcu_struct_quiesced()
2018-05-15 10:27:56 -07:00
srcutiny.h
kernel/SRCU: provide a static initializer
2018-05-30 10:11:34 +02:00
srcutree.h
kernel/SRCU: provide a static initializer
2018-05-30 10:11:34 +02:00
ssbi.h
stackdepot.h
stackprotector.h
Kbuild: rename CC_STACKPROTECTOR[_STRONG] config variables
2018-06-14 12:21:18 +09:00
stacktrace.h
start_kernel.h
stat.h
vfs: change inode times to use struct timespec64
2018-06-05 16:57:31 -07:00
statfs.h
static_key.h
stddef.h
stm.h
stmmac.h
stmp3xxx_rtc_wdt.h
stmp_device.h
stop_machine.h
string.h
x86/asm/memcpy_mcsafe: Return bytes remaining
2018-05-15 08:32:42 +02:00
string_helpers.h
lib/string_helpers: Add missed declaration of struct task_struct
2018-05-15 21:47:09 +03:00
stringhash.h
stringify.h
sudmac.h
sungem_phy.h
sunserialcore.h
sunxi-rsb.h
superhyway.h
suspend.h
svga.h
sw842.h
swab.h
swait.h
Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2018-06-04 17:45:38 -07:00
swap.h
swap_cgroup.h
swap_slots.h
swapfile.h
swapops.h
swiotlb.h
switchtec.h
sxgbe_platform.h
sync_core.h
sync_file.h
synclink.h
sys.h
sys_soc.h
syscalls.h
disable -Wattribute-alias warning for SYSCALL_DEFINEx()
2018-06-25 23:21:13 +09: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
tcp: ignore rcv_rtt sample with old ts ecr value
2018-06-22 13:45:01 +09:00
tee_drv.h
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
drivers: thermal: Update license to SPDX format
2018-05-30 14:46:17 +08:00
thinkpad_acpi.h
thread_info.h
thread_info: Add update_thread_flag() helpers
2018-05-25 12:27:53 +01:00
threads.h
thunderbolt.h
ti-emif-sram.h
ti_wilink_st.h
tick.h
tifm.h
timb_dma.h
timb_gpio.h
time.h
time32.h
timekeeping: Remove timespec64 hack
2018-05-19 13:57:31 +02:00
time64.h
timekeeping: Remove timespec64 hack
2018-05-19 13:57:31 +02:00
timecounter.h
timekeeper_internal.h
timekeeping.h
timekeeping: Add more coarse clocktai/boottime interfaces
2018-05-19 13:57:33 +02:00
timekeeping32.h
timekeeping: Standardize on ktime_get_*() naming
2018-05-19 13:57:32 +02:00
timer.h
timerfd.h
timeriomem-rng.h
timerqueue.h
timex.h
tnum.h
topology.h
torture.h
toshiba.h
tpm.h
tpm_command.h
tpm_eventlog.h
trace.h
trace_clock.h
trace_events.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2018-06-06 18:39:49 -07:00
trace_seq.h
tracefs.h
tracehook.h
tracepoint-defs.h
tracepoint.h
docs: fix broken references with multiple hints
2018-06-15 18:10:01 -03:00
transport_class.h
ts-nbus.h
tsacct_kern.h
tty.h
USB/PHY patches for 4.18-rc1
2018-06-05 16:14:12 -07:00
tty_driver.h
tty: replace ->proc_fops with ->proc_show
2018-05-16 07:24:30 +02:00
tty_flip.h
tty_ldisc.h
typecheck.h
types.h
include/linux/types.h: use fixed width types without double-underscore prefix
2018-06-07 17:34:38 -07:00
u64_stats_sync.h
uaccess.h
ucb1400.h
ucs2_string.h
udp.h
net: Convert GRO SKB handling to list_head.
2018-06-26 11:33:04 +09:00
uidgid.h
uio.h
uio, lib: Fix CONFIG_ARCH_HAS_UACCESS_MCSAFE compilation
2018-05-22 23:17:03 -07:00
uio_driver.h
uio: Prevent device destruction while fds are open
2018-05-14 16:16:35 +02:00
umh.h
umh: introduce fork_usermode_blob() helper
2018-05-23 13:23:39 -04:00
uprobes.h
usb.h
usb: hub: Per-port setting to reduce TRSTRCY to 10 ms
2018-05-31 12:48:17 +02:00
usb_usual.h
usbdevice_fs.h
user-return-notifier.h
user.h
user_namespace.h
userfaultfd_k.h
userfaultfd: prevent non-cooperative events vs mcopy_atomic races
2018-06-07 17:34:38 -07:00
util_macros.h
uts.h
utsname.h
uuid.h
uwb.h
vbox_utils.h
verification.h
vermagic.h
vexpress.h
vfio.h
vfs.h
vga_switcheroo.h
vgaarb.h
via-core.h
via-gpio.h
via.h
via_i2c.h
videodev2.h
virtio.h
virtio_byteorder.h
virtio_caif.h
virtio_config.h
virtio_console.h
virtio_net.h
net: in virtio_net_hdr only add VLAN_HLEN to csum_start if payload holds vlan
2018-06-07 16:15:38 -04:00
virtio_ring.h
virtio_ring: switch to dma_XX barriers for rpmsg
2018-06-07 20:54:23 +03:00
virtio_vsock.h
visorbus.h
vlynq.h
vm_event_item.h
vm_sockets.h
vmacache.h
vmalloc.h
mm: Use overflow helpers in kvmalloc()
2018-06-05 12:16:51 -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
wait.h
wait_bit.h
wanrouter.h
watchdog.h
win_minmax.h
wireless.h
wkup_m3_ipc.h
wl12xx.h
wm97xx.h
wmi.h
workqueue.h
workqueue: Show the latest workqueue name in /proc/PID/{comm,stat,status}
2018-05-18 08:47:13 -07:00
writeback.h
ww_mutex.h
xarray.h
xattr.h
make xattr_getsecurity() static
2018-05-14 09:51:34 -04:00
xxhash.h
xz.h
yam.h
z2_battery.h
zbud.h
zconf.h
zlib.h
zorro.h
zpool.h
zsmalloc.h
zstd.h
zutil.h