Commit Graph

33 Commits

Author SHA1 Message Date
Andrew Noyes eb15746e41 Dereference to get result before marking "no access" 2021-06-02 16:07:04 -07:00
Steve Atherton a31e4f622f Changed ArenaBlockRef to use 32 bit aligned4kBuffer size. 2021-05-16 03:58:05 -07:00
Steve Atherton 2298567c2b Use of aligned_alloc() for 4k pages causes too much wasted virtual memory. Added new 4k-aligned fast allocator, and changed Arena::allocatedAlignedBuffer() to be 4k-specific, now called Arena::allocate4kAlignedBuffer(). 2021-05-14 23:12:00 -07:00
Steve Atherton 16f9f6e75c Added a test of Arena dependencies and destruction when using the new aligned buffer feature. 2021-05-06 02:05:09 -07:00
Steve Atherton f8a8bf315b Added Arena::allocateAlignedBuffer() to get an aligned memory block owned by an Arena, and ArenaPage uses this. 2021-05-05 15:00:12 -07:00
Andrew Noyes a63dc3cfd6 Inform LSAN that we have unaligned pointers 2021-03-13 00:33:47 +00:00
FDB Formatster df90cc89de apply clang-format to *.c, *.cpp, *.h, *.hpp files 2021-03-10 10:18:07 -08:00
Andrew Noyes f91079dbe7 Use camelCase 2020-10-22 21:51:00 +00:00
Andrew Noyes dc5e09ba62 Fix normal build 2020-10-22 16:34:37 +00:00
Andrew Noyes ab4eb627c2 Replace with environment variable
We need to change the behavior of the allocator before main is called,
so a knob won't work.
2020-10-22 16:31:48 +00:00
Andrew Noyes 79163947a6 Add FLOW_KNOBS->VALGRIND_PRECISE 2020-10-22 16:31:48 +00:00
sfc-gh-tclinkenbeard 0ac08f6a9b Replace NULL with nullptr in flow 2020-09-20 11:31:49 -07:00
Jingyu Zhou cb582e58c9 Avoid iterator+2 or -2 passes over the boundary 2020-07-30 13:42:36 -07:00
Jingyu Zhou 9a63882cd4 Fix unit test failure 2020-07-30 11:01:52 -07:00
Andrew Noyes d6d374818c Actually test copy 2020-07-22 19:57:47 +00:00
Andrew Noyes 4195d3ab3b Fix compilation, test copies 2020-07-22 19:57:47 +00:00
Andrew Noyes a25689e6e5 Add append tests, fix append 2020-07-22 19:57:47 +00:00
Andrew Noyes 82b70a0fa3 Fix test bug 2020-07-22 19:57:47 +00:00
Andrew Noyes 03a45e979d Add unit tests for VectorRef and SmallVectorRef 2020-07-22 19:57:47 +00:00
Andrew Noyes 6caa3e470c Fix valgrind build 2020-07-09 22:05:48 +00:00
Russell Sears 4ce51c4cce
Merge pull request #2768 from atn34/atn34/arena-cpp
Check for memory errors in arena-allocated memory
2020-07-06 09:43:28 -07:00
Andrew Noyes 10e094c6d7 Address review comments 2020-06-11 15:43:31 +00:00
Andrew Noyes e772f3a3f1 Separate knob to control valgrind arena instrumentation 2020-05-07 22:07:33 +00:00
A.J. Beamon 96187618a0 Fix condition to check whether allocation tracing is enabled 2020-03-16 15:12:50 -07:00
A.J. Beamon d8cfabe73b Extend the allocation tracing disabling flag to cover more parts of trace logging as a precaution. Make it possible to disable via knob. 2020-03-16 13:59:31 -07:00
A.J. Beamon 2466749648 Don't disallow allocation tracking when a trace event is open because we now have state trace events. Instead, only block allocation tracking while we are in the middle of allocation tracking already to prevent recursion. 2020-03-12 11:17:49 -07:00
Andrew Noyes facc15d5e4 Only poison second ArenaBlock if it's different 2020-03-04 08:34:29 -08:00
Andrew Noyes 41cf0745a4 Make FastAllocator responsible for marking its internal state addressable 2020-03-03 13:40:54 -08:00
Andrew Noyes 9a87a19fc8 Add reference to valgrind docs 2020-03-03 13:40:25 -08:00
Andrew Noyes 32cd90cf05 Use VALGRIND annotations instead of ASAN
Since we actually run valgrind
2020-03-02 14:14:00 -08:00
Andrew Noyes b9dfb43667 WIP, poisoning memory 2020-03-02 14:14:00 -08:00
Andrew Noyes 87ec36dc4c Poison arena-internal buffers 2020-03-02 14:14:00 -08:00
Andrew Noyes f29d6c3f67 Move implementation of ArenaBlock members to Arena.cpp 2020-02-28 12:33:57 -08:00