summaryrefslogtreecommitdiffstats
path: root/lib/test_rhashtable.c
diff options
context:
space:
mode:
authorDaniel Borkmann <daniel@iogearbox.net>2015-02-20 21:14:21 +0100
committerDavid S. Miller <davem@davemloft.net>2015-02-20 16:33:30 -0500
commitb7f5e5c7f8cedf6b69c9702d448cdf78ffc45c7b (patch)
tree7095dd91e8b9ff77264951ac27f1f756e9622bf5 /lib/test_rhashtable.c
parentbf60e50cb3ed50ae536f7655c8af1acda137ea5b (diff)
downloadlinux-b7f5e5c7f8cedf6b69c9702d448cdf78ffc45c7b.tar.gz
linux-b7f5e5c7f8cedf6b69c9702d448cdf78ffc45c7b.tar.bz2
linux-b7f5e5c7f8cedf6b69c9702d448cdf78ffc45c7b.zip
rhashtable: don't allocate ht structure on stack in test_rht_init
With object runtime debugging enabled, the rhashtable test suite will rightfully throw a warning "ODEBUG: object is on stack, but not annotated" from rhashtable_init(). This is because run_work is (correctly) being initialized via INIT_WORK(), and not annotated by INIT_WORK_ONSTACK(). Meaning, rhashtable_init() is okay as is, we just need to move ht e.g., into global scope. It never triggered anything, since test_rhashtable is rather a controlled environment and effectively runs to completion, so that stack memory is not vanishing underneath us, we shouldn't confuse any testers with it though. Fixes: 7e1e77636e36 ("lib: Resizable, Scalable, Concurrent Hash Table") Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Acked-by: Thomas Graf <tgraf@suug.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'lib/test_rhashtable.c')
-rw-r--r--lib/test_rhashtable.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/test_rhashtable.c b/lib/test_rhashtable.c
index 1dfeba73fc74..f6ce291b68e7 100644
--- a/lib/test_rhashtable.c
+++ b/lib/test_rhashtable.c
@@ -191,9 +191,10 @@ error:
return err;
}
+static struct rhashtable ht;
+
static int __init test_rht_init(void)
{
- struct rhashtable ht;
struct rhashtable_params params = {
.nelem_hint = TEST_HT_SIZE,
.head_offset = offsetof(struct test_obj, node),