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
..
842
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
fonts
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
lz4
lib/lz4: make arrays static const, reduces object code size
2017-10-03 17:54:25 -07:00
lzo
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
mpi
treewide: kzalloc() -> kcalloc()
2018-06-12 16:19:22 -07:00
raid6
powerpc updates for 4.17
2018-04-07 12:08:19 -07:00
reed_solomon
treewide: kmalloc() -> kmalloc_array()
2018-06-12 16:19:22 -07:00
xz
lib/xz: Add fall-through comments to a switch statement
2017-10-12 15:10:12 +02:00
zlib_deflate
zlib_inflate
lib/zlib_inflate/inftrees.c: fix potential buffer overflow
2017-05-08 17:15:12 -07:00
zstd
lib: zstd: clean up Makefile for simpler composite object handling
2018-03-26 02:01:27 +09:00
.gitignore
argv_split.c
treewide: kmalloc() -> kmalloc_array()
2018-06-12 16:19:22 -07:00
ashldi3.c
move libgcc.h to include/linux
2017-12-01 13:09:40 -08:00
ashrdi3.c
move libgcc.h to include/linux
2017-12-01 13:09:40 -08:00
asn1_decoder.c
ASN.1: check for error from ASN1_OP_END__ACT actions
2017-12-08 15:13:27 +00:00
assoc_array.c
lib/assoc_array: Remove smp_read_barrier_depends()
2017-12-04 10:52:56 -08:00
atomic64.c
locking/atomic: Implement atomic{,64,_long}_fetch_{add,sub,and,andnot,or,xor}{,_relaxed,_acquire,_release}()
2016-06-16 10:48:32 +02:00
atomic64_test.c
lib/atomic64_test.c: add a test that atomic64_inc_not_zero() returns an int
2017-07-14 15:05:13 -07:00
audit.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
bcd.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
bch.c
bitmap.c
lib/bitmap.c: micro-optimization for __bitmap_complement()
2018-06-07 17:34:39 -07:00
bitrev.c
bsearch.c
lib/bsearch.c: micro-optimize pivot position calculation
2017-07-10 16:32:35 -07:00
btree.c
btree: avoid variable-length allocations
2018-03-14 16:55:29 -07:00
bucket_locks.c
mm: kvmalloc does not fallback to vmalloc for incompatible gfp flags
2018-06-07 17:34:38 -07:00
bug.c
lib/bug.c: exclude non-BUG/WARN exceptions from report_bug()
2018-03-09 16:40:01 -08:00
build_OID_registry
bust_spinlocks.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
chacha20.c
crypto: chacha20 - use rol32() macro from bitops.h
2018-01-12 23:03:01 +11:00
check_signature.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
checksum.c
ipv4: Update parameters for csum_tcpudp_magic to their original types
2016-03-13 23:55:13 -04:00
clz_ctz.c
clz_tab.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
cmdline.c
lib/cmdline.c: remove meaningless comment
2017-09-08 18:26:49 -07:00
cmpdi2.c
move libgcc.h to include/linux
2017-12-01 13:09:40 -08:00
compat_audit.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
cordic.c
cpu_rmap.c
cpumask.c
lib: optimize cpumask_next_and()
2018-02-06 18:32:44 -08:00
crc-ccitt.c
lib/crc-ccitt: Add CCITT-FALSE CRC16 variant
2018-01-08 10:08:33 +00:00
crc-itu-t.c
crc-t10dif.c
crc4.c
docs: clean up and add rest of CRC functions to kernel-api.rst
2017-09-26 15:01:20 -06:00
crc7.c
crc8.c
docs: clean up and add rest of CRC functions to kernel-api.rst
2017-09-26 15:01:20 -06:00
crc16.c
crc32.c
docs: clean up and add rest of CRC functions to kernel-api.rst
2017-09-26 15:01:20 -06:00
crc32defs.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
crc32test.c
lib: add module support to crc32 tests
2017-02-24 17:46:57 -08:00
ctype.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
debug_info.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
debug_locks.c
debugobjects.c
debugobjects: Avoid another unused variable warning
2018-03-14 20:20:01 +01:00
dec_and_lock.c
atomic: Add irqsave variant of atomic_dec_and_lock()
2018-06-12 23:33:24 +02:00
decompress.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
decompress_bunzip2.c
decompress_inflate.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
decompress_unlz4.c
lib/decompress_unlz4: change module to work with new LZ4 module version
2017-02-24 17:46:57 -08:00
decompress_unlzma.c
decompress_unlzo.c
decompress_unxz.c
devres.c
devres: combine function devm_ioremap*
2018-03-15 18:08:55 +01:00
digsig.c
lib/digsig: fix dereference of NULL user_key_payload
2017-10-12 17:16:40 +01:00
div64.c
A relatively calm cycle for the docs tree again.
2017-11-13 08:25:06 -08:00
dump_stack.c
printk: move dump stack related code to lib/dump_stack.c
2018-03-15 13:25:36 +01:00
dynamic_debug.c
dynamic-debug-howto: fix optional/omitted ending line number to be LARGE instead of 0
2017-11-17 16:10:01 -08:00
dynamic_queue_limits.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2017-11-15 11:56:19 -08:00
earlycpio.c
lib/cpio: Make find_cpio_data()'s offset arg optional
2016-06-08 11:04:19 +02:00
error-inject.c
error-injection: Add injectable error types
2018-01-12 17:33:38 -08:00
errseq.c
errseq: Always report a writeback error once
2018-04-27 08:51:26 -04:00
extable.c
lib/extable.c: use bsearch() library function in search_extable()
2017-07-10 16:32:35 -07:00
fault-inject.c
fault-inject: fix wrong should_fail() decision in task context
2017-08-10 15:54:06 -07:00
fdt.c
fdt_empty_tree.c
fdt_ro.c
fdt_rw.c
fdt_strerror.c
fdt_sw.c
fdt_wip.c
find_bit.c
lib: optimize cpumask_next_and()
2018-02-06 18:32:44 -08:00
find_bit_benchmark.c
lib/find_bit_benchmark.c: avoid soft lockup in test_find_first_bit()
2018-05-11 17:28:45 -07:00
flex_array.c
flex_proportions.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
gcd.c
lib/gcd: add kernel-doc notation
2017-10-07 10:45:14 -06:00
gen_crc32table.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
genalloc.c
lib/genalloc.c: make the avail variable an atomic_long_t
2017-11-17 16:10:02 -08:00
glob.c
lib: add module support to glob tests
2017-02-24 17:46:57 -08:00
globtest.c
lib: add module support to glob tests
2017-02-24 17:46:57 -08:00
hexdump.c
lib/hexdump.c: return -EINVAL in case of error in hex2bin()
2017-09-08 18:26:49 -07:00
hweight.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
idr.c
lib/idr.c: remove simple_ida_lock
2018-06-07 17:34:39 -07:00
inflate.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
int_sqrt.c
lib: Add strongly typed 64bit int_sqrt
2018-02-04 10:17:21 +00:00
interval_tree.c
interval_tree_test.c
treewide: kmalloc() -> kmalloc_array()
2018-06-12 16:19:22 -07:00
iomap.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
iomap_copy.c
lib/iomap_copy.c: add __ioread32_copy()
2016-01-20 17:09:18 -08:00
iommu-helper.c
iommu-helper: mark iommu_is_span_boundary as inline
2018-05-09 06:55:44 +02:00
ioremap.c
mm/vmalloc: add interfaces to free unmapped page table
2018-03-22 17:07:01 -07:00
iov_iter.c
Merge branch 'for-4.18/mcsafe' into libnvdimm-for-next
2018-06-08 15:16:44 -07:00
irq_poll.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
irq_regs.c
is_single_threaded.c
sched/headers: Prepare to move 'init_task' and 'init_thread_union' from <linux/sched.h> to <linux/sched/task.h>
2017-03-02 08:42:38 +01:00
jedec_ddr_data.c
kasprintf.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
Kconfig
Move all the dma-mapping code to kernel/dma
2018-06-20 16:30:01 +09:00
Kconfig.debug
fault-injection: reorder config entries
2018-06-15 07:55:24 +09:00
Kconfig.kasan
kasan: depend on CONFIG_SLUB_DEBUG
2018-06-28 11:16:44 -07:00
Kconfig.kgdb
lib: update location of kgdb documentation
2017-05-16 08:44:22 -03:00
Kconfig.ubsan
lib: add testing module for UBSAN
2018-04-11 10:28:35 -07:00
kfifo.c
treewide: kmalloc() -> kmalloc_array()
2018-06-12 16:19:22 -07:00
klist.c
klist: fix starting point removed bug in klist iterators
2016-02-07 22:18:47 -08:00
kobject.c
kobject: don't use WARN for registration failures
2018-04-23 13:14:55 +02:00
kobject_uevent.c
netns: restrict uevents
2018-05-01 10:22:41 -04:00
kstrtox.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
kstrtox.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
lcm.c
libcrc32c.c
libcrc32c: Add crc32c_impl function
2018-03-26 15:09:38 +02:00
list_debug.c
lib/list_debug.c: print unmangled addresses
2018-04-11 10:28:35 -07:00
list_sort.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
llist.c
locking/atomics: COCCINELLE/treewide: Convert trivial ACCESS_ONCE() patterns to READ_ONCE()/WRITE_ONCE()
2017-10-25 11:01:08 +02:00
locking-selftest-hardirq.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
locking-selftest-mutex.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
locking-selftest-rlock-hardirq.h
locking-selftest-rlock-softirq.h
locking-selftest-rlock.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
locking-selftest-rsem.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
locking-selftest-rtmutex.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
locking-selftest-softirq.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
locking-selftest-spin-hardirq.h
locking-selftest-spin-softirq.h
locking-selftest-spin.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
locking-selftest-wlock-hardirq.h
locking-selftest-wlock-softirq.h
locking-selftest-wlock.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
locking-selftest-wsem.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
locking-selftest.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
lockref.c
lockref: Add lockref_put_not_zero
2018-04-12 09:41:19 -07:00
logic_pio.c
lib: Add generic PIO mapping method
2018-03-21 17:18:34 -05:00
lru_cache.c
treewide: kzalloc() -> kcalloc()
2018-06-12 16:19:22 -07:00
lshrdi3.c
move libgcc.h to include/linux
2017-12-01 13:09:40 -08:00
Makefile
Merge branch 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2018-06-24 19:36:16 +08:00
memory-notifier-error-inject.c
memweight.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
muldi3.c
move libgcc.h to include/linux
2017-12-01 13:09:40 -08:00
net_utils.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
netdev-notifier-error-inject.c
nlattr.c
netlink: Return extack message if attribute validation fails
2018-06-28 16:18:04 +09:00
nmi_backtrace.c
lib/nmi_backtrace.c: fix kernel text address leak
2017-11-17 16:10:02 -08:00
nodemask.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
notifier-error-inject.c
notifier-error-inject.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
of-reconfig-notifier-error-inject.c
oid_registry.c
509: fix printing uninitialized stack memory when OID is empty
2017-12-08 15:13:28 +00:00
once.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2017-11-04 09:26:51 +09:00
parman.c
lib: Introduce priority array area manager
2017-02-03 16:35:42 -05:00
parser.c
parser: add u64 number parser
2016-12-06 10:17:03 +02:00
pci_iomap.c
PCI: Add SPDX GPL-2.0 when no license was specified
2018-01-26 11:45:16 -06:00
percpu-refcount.c
percpu_ref: Update doc to dissuade users from depending on internal RCU grace periods
2018-03-19 10:09:44 -07:00
percpu_counter.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
percpu_ida.c
lib/percpu_ida.c: don't do alloc from per-CPU list if there is none
2018-06-28 11:16:44 -07:00
percpu_test.c
plist.c
sched/headers: Prepare for new header dependencies before moving code to <linux/sched/clock.h>
2017-03-02 08:42:27 +01:00
pm-notifier-error-inject.c
prime_numbers.c
lib/prime_numbers: Suppress warn on kmalloc failure
2017-01-23 09:17:12 +01:00
radix-tree.c
idr: fix invalid ptr dereference on item delete
2018-05-25 18:12:10 -07:00
random32.c
treewide: Switch DEFINE_TIMER callbacks to struct timer_list *
2017-11-21 15:57:05 -08:00
ratelimit.c
lib/ratelimit.c: use deferred printk() version
2017-10-03 17:54:26 -07:00
rational.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
rbtree.c
lib/rbtree,drm/mm: add rbtree_replace_node_cached()
2017-12-14 16:00:48 -08:00
rbtree_test.c
treewide: kmalloc() -> kmalloc_array()
2018-06-12 16:19:22 -07:00
reciprocal_div.c
lib: reciprocal_div: implement the improved algorithm on the paper mentioned
2018-07-07 01:45:31 +02:00
refcount.c
locking/refcounts: Implement refcount_dec_and_lock_irqsave()
2018-06-12 23:33:25 +02:00
rhashtable.c
rhashtable: clean up dereference of ->future_tbl.
2018-06-22 13:43:28 +09:00
sbitmap.c
treewide: kzalloc_node() -> kcalloc_node()
2018-06-12 16:19:22 -07:00
scatterlist.c
for-linus-20180629
2018-06-30 10:47:46 -07:00
seq_buf.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
sg_pool.c
lib: scatterlist: move SG pool code from SCSI driver to lib/sg_pool.c
2016-04-15 16:53:14 -04:00
sg_split.c
sha1.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
sha256.c
kernel/kexec_file.c: move purgatories sha256 to common code
2018-04-13 17:10:28 -07:00
show_mem.c
lib/show_mem.c: teach show_mem to work with the given nodemask
2017-02-22 16:41:30 -08:00
siphash.c
siphash: implement HalfSipHash1-3 for hash tables
2017-01-09 13:58:57 -05:00
smp_processor_id.c
lib: do not use print_symbol()
2018-01-05 15:24:00 +01:00
sort.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
stackdepot.c
lib/stackdepot.c: use a non-instrumented version of memcmp()
2018-02-06 18:32:44 -08:00
stmp_device.c
string.c
lib/strscpy: Shut up KASAN false-positives in strscpy()
2018-02-01 12:20:21 -08:00
string_helpers.c
mm: treewide: remove GFP_TEMPORARY allocation flag
2017-09-13 18:53:16 -07:00
strncpy_from_user.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
strnlen_user.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
syscall.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
test-kstrtox.c
test-string_helpers.c
lib/test-string_helpers.c: fix and improve string_get_size() tests
2016-02-03 08:28:43 -08:00
test_bitmap.c
lib/test_bitmap.c: fix bitmap optimisation tests to report errors correctly
2018-05-18 17:17:12 -07:00
test_bpf.c
test_bpf: flag tests that cannot be jited on s390
2018-06-28 23:58:39 +02:00
test_debug_virtual.c
lib: add test module for CONFIG_DEBUG_VIRTUAL
2017-09-08 18:26:49 -07:00
test_firmware.c
treewide: Use array_size() in vzalloc()
2018-06-12 16:19:22 -07:00
test_hash.c
lib/test_hash.c: fix warning in preprocessor symbol evaluation
2016-09-01 17:52:01 -07:00
test_hexdump.c
test_hexdump: print statistics at the end
2016-01-20 17:09:18 -08:00
test_kasan.c
kasan: fix invalid-free test crashing the kernel
2018-04-11 10:28:32 -07:00
test_kmod.c
treewide: Use array_size() in vzalloc()
2018-06-12 16:19:22 -07:00
test_list_sort.c
lib/test: delete five error messages for failed memory allocations
2017-11-17 16:10:01 -08:00
test_module.c
test_overflow.c
test_overflow: fix an IS_ERR() vs NULL bug
2018-06-12 16:19:22 -07:00
test_parman.c
lib: fix spelling mistake: "actualy" -> "actually"
2017-02-26 11:03:38 -05:00
test_printf.c
Revert "lib/test_printf.c: call wait_for_random_bytes() before plain %p tests"
2018-06-25 13:44:20 +02:00
test_rhashtable.c
rhashtable: remove nulls_base and related code.
2018-06-22 13:43:27 +09:00
test_siphash.c
siphash: implement HalfSipHash1-3 for hash tables
2017-01-09 13:58:57 -05:00
test_sort.c
lib/test_sort.c: add module unload support
2018-02-06 18:32:45 -08:00
test_static_key_base.c
test_static_keys.c
locking/static_keys: Avoid nested functions
2016-02-09 10:27:29 +01:00
test_string.c
lib: add module support to string tests
2017-11-17 16:10:01 -08:00
test_sysctl.c
test_sysctl: test against int proc_dointvec() array support
2017-07-12 16:26:00 -07:00
test_ubsan.c
lib/test_ubsan.c: make test_ubsan_misaligned_access() static
2018-04-11 10:28:35 -07:00
test_user_copy.c
treewide: simplify Kconfig dependencies for removed archs
2018-03-26 15:55:57 +02:00
test_uuid.c
uuid: fix incorrect uuid_equal conversion in test_uuid_test
2017-07-21 09:38:30 +02:00
textsearch.c
textsearch: fix kernel-doc warnings and add kernel-api section
2018-04-16 18:53:13 -04:00
timerqueue.c
timerqueue: Document return values of timerqueue_add/del()
2017-12-29 23:13:10 +01:00
ts_bm.c
ts_fsm.c
textsearch: fix typos in library helpers
2017-10-22 03:14:07 +01:00
ts_kmp.c
textsearch: fix typos in library helpers
2017-10-22 03:14:07 +01:00
ubsan.c
lib/ubsan: remove returns-nonnull-attribute checks
2018-02-06 18:32:46 -08:00
ubsan.h
lib/ubsan: remove returns-nonnull-attribute checks
2018-02-06 18:32:46 -08:00
ucmpdi2.c
Add notrace to lib/ucmpdi2.c
2018-04-23 16:39:35 +01:00
ucs2_string.c
lib/ucs2_string.c: add MODULE_LICENSE()
2018-06-07 17:34:39 -07:00
usercopy.c
Fix misannotated out-of-line _copy_to_user()
2017-12-11 09:35:11 -05:00
uuid.c
Documentation: add UUID/GUID to kernel-api
2017-12-11 15:03:08 -07:00
vsprintf.c
Printk changes for 4.18
2018-06-06 16:04:55 -07:00
win_minmax.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
xxhash.c
lib: Add xxhash module
2017-08-15 09:02:07 -07:00