diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2017-01-07 08:38:58 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-01-07 08:38:58 +0100 |
commit | 814567bf2fee941a77b8685171fedf1f7a825800 (patch) | |
tree | 7ce8a750abf4bbc1ade1fd8407e8fdf8bfe1a677 /vespamalloc/src/tests | |
parent | 8b774509af8df6d2bd5825796d8a066a38db93e1 (diff) |
Revert "Balder/vespamalloc should not depend on anything else rebased 2"
Diffstat (limited to 'vespamalloc/src/tests')
-rw-r--r-- | vespamalloc/src/tests/allocfree/allocfree.cpp | 9 | ||||
-rw-r--r-- | vespamalloc/src/tests/allocfree/creatingmanythreads.cpp | 3 | ||||
-rw-r--r-- | vespamalloc/src/tests/allocfree/linklist.cpp | 29 | ||||
-rw-r--r-- | vespamalloc/src/tests/allocfree/realloc.cpp | 5 | ||||
-rw-r--r-- | vespamalloc/src/tests/doubledelete/expectsignal.cpp | 4 | ||||
-rw-r--r-- | vespamalloc/src/tests/overwrite/expectsignal.cpp | 4 | ||||
-rw-r--r-- | vespamalloc/src/tests/overwrite/overwrite.cpp | 4 | ||||
-rw-r--r-- | vespamalloc/src/tests/test.cpp | 2 | ||||
-rw-r--r-- | vespamalloc/src/tests/test1/CMakeLists.txt | 1 | ||||
-rw-r--r-- | vespamalloc/src/tests/test1/testatomic.cpp | 26 |
10 files changed, 47 insertions, 40 deletions
diff --git a/vespamalloc/src/tests/allocfree/allocfree.cpp b/vespamalloc/src/tests/allocfree/allocfree.cpp index 7e81aaa9c1d..f1ecb74754b 100644 --- a/vespamalloc/src/tests/allocfree/allocfree.cpp +++ b/vespamalloc/src/tests/allocfree/allocfree.cpp @@ -1,15 +1,16 @@ // Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -#include "producerconsumer.h" +#include <vespa/fastos/fastos.h> +#include <vespa/log/log.h> #include <vespa/vespalib/testkit/testapp.h> +#include "producerconsumer.h" #include <map> -#include <vespa/log/log.h> -LOG_SETUP("allocfree_test"); - using vespalib::Consumer; using vespalib::Producer; using vespalib::ProducerConsumer; +LOG_SETUP("allocfree_test"); + TEST_SETUP(Test); //----------------------------------------------------------------------------- diff --git a/vespamalloc/src/tests/allocfree/creatingmanythreads.cpp b/vespamalloc/src/tests/allocfree/creatingmanythreads.cpp index 86da05311c6..53de3f274cc 100644 --- a/vespamalloc/src/tests/allocfree/creatingmanythreads.cpp +++ b/vespamalloc/src/tests/allocfree/creatingmanythreads.cpp @@ -1,7 +1,8 @@ // Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +#include <vespa/log/log.h> +#include <vespa/fastos/fastos.h> #include <vespa/vespalib/testkit/testapp.h> -#include <vespa/log/log.h> LOG_SETUP("creatingmanythreads_test"); TEST_SETUP(Test); diff --git a/vespamalloc/src/tests/allocfree/linklist.cpp b/vespamalloc/src/tests/allocfree/linklist.cpp index 9642c987899..39cd237420b 100644 --- a/vespamalloc/src/tests/allocfree/linklist.cpp +++ b/vespamalloc/src/tests/allocfree/linklist.cpp @@ -1,15 +1,17 @@ // Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -#include "producerconsumer.h" +#include <vespa/fastos/fastos.h> #include <vespa/vespalib/testkit/testapp.h> +#include "producerconsumer.h" #include <vespamalloc/malloc/allocchunk.h> #include <vespamalloc/util/callstack.h> #include <vespa/log/log.h> -LOG_SETUP("linklist_test"); using vespalib::Consumer; using vespalib::Producer; using vespalib::ProducerConsumer; +LOG_SETUP("linklist_test"); + TEST_SETUP(Test); //----------------------------------------------------------------------------- @@ -58,9 +60,9 @@ List globalList[NumBlocks]; class LinkIn : public Consumer { public: - LinkIn(List::AtomicHeadPtr & list, uint32_t maxQueue, bool inverse); + LinkIn(List::HeadPtr & list, uint32_t maxQueue, bool inverse); private: - List::AtomicHeadPtr & _head; + List::HeadPtr & _head; virtual void consume(void * p) { List * l((List *) p); if ( ! ((l >= &globalList[0]) && (l < &globalList[NumBlocks]))) { abort(); } @@ -68,7 +70,7 @@ private: } }; -LinkIn::LinkIn(List::AtomicHeadPtr & list, uint32_t maxQueue, bool inverse) : +LinkIn::LinkIn(List::HeadPtr & list, uint32_t maxQueue, bool inverse) : Consumer (maxQueue, inverse), _head(list) { @@ -78,10 +80,10 @@ LinkIn::LinkIn(List::AtomicHeadPtr & list, uint32_t maxQueue, bool inverse) : class LinkOut : public Producer { public: - LinkOut(List::AtomicHeadPtr & list, uint32_t cnt, LinkIn &target) + LinkOut(List::HeadPtr & list, uint32_t cnt, LinkIn &target) : Producer(cnt, target), _head(list) {} private: - List::AtomicHeadPtr & _head; + List::HeadPtr & _head; virtual void * produce() { void *p = List::linkOut(_head); List *l((List *)p); @@ -94,10 +96,10 @@ private: class LinkInOutAndIn : public ProducerConsumer { public: - LinkInOutAndIn(List::AtomicHeadPtr & list, uint32_t cnt, bool inverse) + LinkInOutAndIn(List::HeadPtr & list, uint32_t cnt, bool inverse) : ProducerConsumer(cnt, inverse), _head(list) { } private: - List::AtomicHeadPtr & _head; + List::HeadPtr & _head; virtual void * produce() { void *p = List::linkOut(_head); List *l((List *)p); @@ -123,7 +125,10 @@ int Test::Main() { ASSERT_EQUAL(1024ul, sizeof(List)); FastOS_ThreadPool pool(128000); - List::AtomicHeadPtr sharedList(List::HeadPtr(nullptr, 1)); + List::HeadPtr sharedList; + sharedList._tag = 1; + List::init(); + List::enableThreadSupport(); fprintf(stderr, "Start populating list\n"); for (size_t i=0; i < NumBlocks; i++) { List * l(&globalList[i]); @@ -138,9 +143,7 @@ int Test::Main() { List *n = List::linkOut(sharedList); ASSERT_TRUE(n == NULL); - List::HeadPtr tmp(sharedList.load()); - tmp._tag = 1; - sharedList.store(tmp); + sharedList._tag = 1; fprintf(stderr, "Start populating list\n"); for (size_t i=0; i < NumBlocks; i++) { List * l(&globalList[i]); diff --git a/vespamalloc/src/tests/allocfree/realloc.cpp b/vespamalloc/src/tests/allocfree/realloc.cpp index efaf89f7e1b..8cfd50d0132 100644 --- a/vespamalloc/src/tests/allocfree/realloc.cpp +++ b/vespamalloc/src/tests/allocfree/realloc.cpp @@ -1,7 +1,10 @@ // Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. - +#include <vespa/log/log.h> +#include <vespa/fastos/fastos.h> #include <vespa/vespalib/testkit/testapp.h> +LOG_SETUP("realloc_test"); + TEST_SETUP(Test); int Test::Main() { diff --git a/vespamalloc/src/tests/doubledelete/expectsignal.cpp b/vespamalloc/src/tests/doubledelete/expectsignal.cpp index f1fb6eb5694..0b2d5e154c4 100644 --- a/vespamalloc/src/tests/doubledelete/expectsignal.cpp +++ b/vespamalloc/src/tests/doubledelete/expectsignal.cpp @@ -1,7 +1,11 @@ // Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +#include <vespa/log/log.h> +#include <vespa/fastos/fastos.h> #include <vespa/vespalib/testkit/testapp.h> #include <vespa/vespalib/util/slaveproc.h> +LOG_SETUP("expectsignal_test"); + using namespace vespalib; class Test : public TestApp diff --git a/vespamalloc/src/tests/overwrite/expectsignal.cpp b/vespamalloc/src/tests/overwrite/expectsignal.cpp index f1fb6eb5694..0b2d5e154c4 100644 --- a/vespamalloc/src/tests/overwrite/expectsignal.cpp +++ b/vespamalloc/src/tests/overwrite/expectsignal.cpp @@ -1,7 +1,11 @@ // Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +#include <vespa/log/log.h> +#include <vespa/fastos/fastos.h> #include <vespa/vespalib/testkit/testapp.h> #include <vespa/vespalib/util/slaveproc.h> +LOG_SETUP("expectsignal_test"); + using namespace vespalib; class Test : public TestApp diff --git a/vespamalloc/src/tests/overwrite/overwrite.cpp b/vespamalloc/src/tests/overwrite/overwrite.cpp index 8c35fe841fe..d7057444505 100644 --- a/vespamalloc/src/tests/overwrite/overwrite.cpp +++ b/vespamalloc/src/tests/overwrite/overwrite.cpp @@ -1,6 +1,10 @@ // Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +#include <vespa/log/log.h> +#include <vespa/fastos/fastos.h> #include <vespa/vespalib/testkit/testapp.h> +LOG_SETUP("overwrite_test"); + using namespace vespalib; class Test : public TestApp diff --git a/vespamalloc/src/tests/test.cpp b/vespamalloc/src/tests/test.cpp index d6208fdc240..24acb3368d8 100644 --- a/vespamalloc/src/tests/test.cpp +++ b/vespamalloc/src/tests/test.cpp @@ -1,7 +1,7 @@ // Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. #include <stdio.h> #include <stdlib.h> -#include <vespa/fastos/thread.h> +#include <vespa/fastos/fastos.h> namespace vespamalloc { void info(); diff --git a/vespamalloc/src/tests/test1/CMakeLists.txt b/vespamalloc/src/tests/test1/CMakeLists.txt index 3120f1d39d0..205de0f96fc 100644 --- a/vespamalloc/src/tests/test1/CMakeLists.txt +++ b/vespamalloc/src/tests/test1/CMakeLists.txt @@ -3,6 +3,5 @@ vespa_add_executable(vespamalloc_testatomic_app TEST SOURCES testatomic.cpp DEPENDS - atomic ) vespa_add_test(NAME vespamalloc_testatomic_app NO_VALGRIND COMMAND vespamalloc_testatomic_app) diff --git a/vespamalloc/src/tests/test1/testatomic.cpp b/vespamalloc/src/tests/test1/testatomic.cpp index 78d94429a3f..1222493446c 100644 --- a/vespamalloc/src/tests/test1/testatomic.cpp +++ b/vespamalloc/src/tests/test1/testatomic.cpp @@ -1,8 +1,10 @@ // Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -#include <vespa/fastos/thread.h> +#include <vespa/fastos/fastos.h> #include <vespa/vespalib/testkit/testapp.h> #include <vespa/vespalib/util/atomic.h> -#include <vespamalloc/malloc/allocchunk.h> +#include <vector> + +using vespalib::Atomic; class Test : public vespalib::TestApp { @@ -37,10 +39,10 @@ void Test::testSwap(T initial) { T value(initial); - ASSERT_TRUE(vespalib::Atomic::cmpSwap(&value, initial+1, initial)); + ASSERT_TRUE(Atomic::cmpSwap(&value, initial+1, initial)); ASSERT_TRUE(value == initial+1); - ASSERT_TRUE(!vespalib::Atomic::cmpSwap(&value, initial+2, initial)); + ASSERT_TRUE(!Atomic::cmpSwap(&value, initial+2, initial)); ASSERT_TRUE(value == initial+1); } @@ -89,7 +91,7 @@ template <typename T> void Stress<T>::stressSwap(T & value) { for (T old = value; old > 0; old = value) { - if (vespalib::Atomic::cmpSwap(&value, old-1, old)) { + if (Atomic::cmpSwap(&value, old-1, old)) { _successCount++; } else { _failedCount++; @@ -101,20 +103,6 @@ int Test::Main() { TEST_INIT("atomic"); - { - std::atomic<uint32_t> uint32V; - ASSERT_TRUE(uint32V.is_lock_free()); - } - { - std::atomic<uint64_t> uint64V; - ASSERT_TRUE(uint64V.is_lock_free()); - } - { - std::atomic<vespamalloc::TaggedPtr> taggedPtr; - ASSERT_EQUAL(16, sizeof(vespamalloc::TaggedPtr)); - ASSERT_TRUE(taggedPtr.is_lock_free()); - } - testSwap<uint32_t>(6); testSwap<uint32_t>(7); testSwap<uint32_t>(uint32_t(-6)); |