linux/lib
Bart Van Assche 81733c642d lib/test_rhashtable: Make test_insert_dup() allocate its hash table dynamically
[ Upstream commit fc42a689c4 ]

The test_insert_dup() function from lib/test_rhashtable.c passes a
pointer to a stack object to rhltable_init(). Allocate the hash table
dynamically to avoid that the following is reported with object
debugging enabled:

ODEBUG: object (ptrval) is on stack (ptrval), but NOT annotated.
WARNING: CPU: 0 PID: 1 at lib/debugobjects.c:368 __debug_object_init+0x312/0x480
Modules linked in:
EIP: __debug_object_init+0x312/0x480
Call Trace:
 ? debug_object_init+0x1a/0x20
 ? __init_work+0x16/0x30
 ? rhashtable_init+0x1e1/0x460
 ? sched_clock_cpu+0x57/0xe0
 ? rhltable_init+0xb/0x20
 ? test_insert_dup+0x32/0x20f
 ? trace_hardirqs_on+0x38/0xf0
 ? ida_dump+0x10/0x10
 ? jhash+0x130/0x130
 ? my_hashfn+0x30/0x30
 ? test_rht_init+0x6aa/0xab4
 ? ida_dump+0x10/0x10
 ? test_rhltable+0xc5c/0xc5c
 ? do_one_initcall+0x67/0x28e
 ? trace_hardirqs_off+0x22/0xe0
 ? restore_all_kernel+0xf/0x70
 ? trace_hardirqs_on_thunk+0xc/0x10
 ? restore_all_kernel+0xf/0x70
 ? kernel_init_freeable+0x142/0x213
 ? rest_init+0x230/0x230
 ? kernel_init+0x10/0x110
 ? schedule_tail_wrapper+0x9/0xc
 ? ret_from_fork+0x19/0x24

Cc: Thomas Graf <tgraf@suug.ch>
Cc: Herbert Xu <herbert@gondor.apana.org.au>
Cc: netdev@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-02-12 19:47:21 +01:00
..
842
fonts lib/fonts: convert comments to utf-8 2018-08-23 18:48:43 -07:00
lz4
lzo
mpi
raid6 raid6/ppc: Fix build for clang 2019-01-13 09:51:05 +01:00
reed_solomon
xz lib/xz: Put CRC32_POLY_LE in xz_private.h 2018-10-02 08:44:59 +10:00
zlib_deflate
zlib_inflate
zstd
.gitignore lib: add crc64 calculation routines 2018-08-22 10:52:48 -07:00
argv_split.c
ashldi3.c
ashrdi3.c
asn1_decoder.c
assoc_array.c
atomic64_test.c
atomic64.c
audit.c
bcd.c
bch.c lib/bch: fix possible stack overrun 2018-10-12 09:17:46 +02:00
bitmap.c lib/bitmap.c: drop unnecessary 0 check for u32 array operations 2018-08-22 10:52:48 -07:00
bitrev.c
bsearch.c
btree.c
bucket_locks.c ila: make lockdep happy again 2018-08-16 12:14:42 -07:00
bug.c
build_OID_registry
bust_spinlocks.c
chacha20.c
check_signature.c
checksum.c
clz_ctz.c
clz_tab.c
cmdline.c
cmpdi2.c
compat_audit.c
cordic.c
cpu_rmap.c
cpumask.c
crc-ccitt.c
crc-itu-t.c
crc-t10dif.c
crc4.c
crc7.c
crc8.c
crc16.c
crc32.c
crc32defs.h
crc32test.c
crc64.c lib: add crc64 calculation routines 2018-08-22 10:52:48 -07:00
ctype.c
debug_info.c
debug_locks.c locking/lockdep: Fix debug_locks off performance problem 2018-11-13 11:08:20 -08:00
debugobjects.c debugobjects: avoid recursive calls with kmemleak 2018-12-17 09:24:41 +01:00
dec_and_lock.c
decompress_bunzip2.c
decompress_inflate.c
decompress_unlz4.c
decompress_unlzma.c
decompress_unlzo.c
decompress_unxz.c
decompress.c
devres.c
digsig.c
div64.c
dump_stack.c
dynamic_debug.c
dynamic_queue_limits.c
earlycpio.c
error-inject.c
errseq.c
extable.c
fault-inject.c
fdt_empty_tree.c
fdt_ro.c
fdt_rw.c
fdt_strerror.c
fdt_sw.c
fdt_wip.c
fdt.c
find_bit_benchmark.c
find_bit.c
flex_array.c
flex_proportions.c
gcd.c
gen_crc32table.c
gen_crc64table.c lib: add crc64 calculation routines 2018-08-22 10:52:48 -07:00
genalloc.c
glob.c
globtest.c
hexdump.c
hweight.c
idr.c ida: Change ida_get_new_above to return the id 2018-08-21 23:54:21 -04:00
inflate.c
int_sqrt.c fix int_sqrt64() for very large numbers 2019-01-22 21:40:34 +01:00
interval_tree_test.c
interval_tree.c
iomap_copy.c
iomap.c
iommu-helper.c
ioremap.c
iov_iter.c
irq_poll.c
irq_regs.c
is_single_threaded.c
jedec_ddr_data.c
kasprintf.c
Kconfig lib/Kconfig: remove 'default n' for tests 2018-08-22 10:52:48 -07:00
Kconfig.debug lib/Kconfig.debug: fix three typos in help text 2018-09-04 16:45:02 -07:00
Kconfig.kasan
Kconfig.kgdb
Kconfig.ubsan
kfifo.c
klist.c
kobject_uevent.c
kobject.c Driver core patches for 4.19-rc1 2018-08-18 11:44:53 -07:00
kstrtox.c
kstrtox.h
lcm.c
libcrc32c.c
list_debug.c
list_sort.c
llist.c
locking-selftest-hardirq.h
locking-selftest-mutex.h
locking-selftest-rlock-hardirq.h
locking-selftest-rlock-softirq.h
locking-selftest-rlock.h
locking-selftest-rsem.h
locking-selftest-rtmutex.h
locking-selftest-softirq.h
locking-selftest-spin-hardirq.h
locking-selftest-spin-softirq.h
locking-selftest-spin.h
locking-selftest-wlock-hardirq.h
locking-selftest-wlock-softirq.h
locking-selftest-wlock.h
locking-selftest-wsem.h
locking-selftest.c
lockref.c
logic_pio.c
lru_cache.c
lshrdi3.c
Makefile lib/bch: fix possible stack overrun 2018-10-12 09:17:46 +02:00
memory-notifier-error-inject.c
memweight.c
muldi3.c
net_utils.c
netdev-notifier-error-inject.c
nlattr.c
nmi_backtrace.c
nodemask.c
notifier-error-inject.c
notifier-error-inject.h
of-reconfig-notifier-error-inject.c
oid_registry.c
once.c
parman.c
parser.c
pci_iomap.c
percpu_counter.c notifier: Remove notifier header file wherever not used 2018-08-30 12:56:40 +02:00
percpu_test.c
percpu-refcount.c
plist.c
pm-notifier-error-inject.c
prime_numbers.c
radix-tree.c ida: Remove old API 2018-08-21 23:54:21 -04:00
random32.c
ratelimit.c
rational.c
rbtree_test.c
rbtree.c
reciprocal_div.c
refcount.c
rhashtable.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-08-27 11:59:39 -07:00
sbitmap.c
scatterlist.c
seq_buf.c seq_buf: Make seq_buf_puts() null-terminate the buffer 2019-02-12 19:47:16 +01:00
sg_pool.c
sg_split.c
sha1.c
sha256.c
show_mem.c
siphash.c
smp_processor_id.c
sort.c
stackdepot.c
stmp_device.c
string_helpers.c
string.c
strncpy_from_user.c
strnlen_user.c
syscall.c
test_bitfield.c
test_bitmap.c
test_bpf.c
test_debug_virtual.c lib: fix build failure in CONFIG_DEBUG_VIRTUAL test 2019-01-13 09:51:10 +01:00
test_firmware.c test_firmware: fix error return getting clobbered 2018-12-13 09:16:10 +01:00
test_hash.c
test_hexdump.c test_hexdump: use memcpy instead of strncpy 2018-12-08 12:59:06 +01:00
test_ida.c test_ida: Fix lockdep warning 2018-10-15 16:31:29 -04:00
test_kasan.c
test_kmod.c lib/test_kmod.c: fix rmmod double free 2018-12-05 19:32:13 +01:00
test_list_sort.c
test_module.c
test_overflow.c
test_parman.c
test_printf.c
test_rhashtable.c lib/test_rhashtable: Make test_insert_dup() allocate its hash table dynamically 2019-02-12 19:47:21 +01:00
test_siphash.c
test_sort.c
test_static_key_base.c
test_static_keys.c
test_string.c
test_sysctl.c
test_ubsan.c
test_user_copy.c
test_uuid.c
test-kstrtox.c
test-string_helpers.c
textsearch.c
timerqueue.c
ts_bm.c
ts_fsm.c
ts_kmp.c
ubsan.c lib/ubsan.c: don't mark __ubsan_handle_builtin_unreachable as noreturn 2018-11-21 09:19:24 +01:00
ubsan.h
ucmpdi2.c
ucs2_string.c
usercopy.c
uuid.c
vsprintf.c vsprintf: Fix off-by-one bug in bstr_printf() processing dereferenced pointers 2018-10-05 10:17:15 -04:00
win_minmax.c
xxhash.c