mirror of
https://github.com/apple/foundationdb.git
synced 2025-05-14 01:42:37 +08:00
Clear unused memory regions for structures written to disk.
This commit is contained in:
parent
3ef18bc173
commit
702bd59ded
@ -1715,8 +1715,8 @@ public:
|
||||
ASSERT(size() <= spaceAvailable);
|
||||
nodeBytesFree = spaceAvailable - size();
|
||||
|
||||
// Mark unused available space as defined
|
||||
VALGRIND_MAKE_MEM_DEFINED((uint8_t*)this + size(), nodeBytesFree);
|
||||
// Zero unused available space
|
||||
memset((uint8_t*)this + size(), 0, nodeBytesFree);
|
||||
|
||||
return size();
|
||||
}
|
||||
|
@ -226,8 +226,8 @@ public:
|
||||
if (bufferSize > 0) {
|
||||
buffer = (uint8_t*)arena.allocate4kAlignedBuffer(bufferSize);
|
||||
|
||||
// Mark any unused page portion defined
|
||||
VALGRIND_MAKE_MEM_DEFINED(buffer + logicalSize, bufferSize - logicalSize);
|
||||
// Zero unused region
|
||||
memset(buffer + logicalSize, 0, bufferSize - logicalSize);
|
||||
} else {
|
||||
buffer = nullptr;
|
||||
}
|
||||
|
@ -731,8 +731,8 @@ public:
|
||||
ASSERT(mode == WRITE);
|
||||
debug_printf("FIFOQueue::Cursor(%s) writePage\n", toString().c_str());
|
||||
|
||||
// Mark the unused part of the item space as defined
|
||||
VALGRIND_MAKE_MEM_DEFINED(header()->begin() + offset, header()->itemSpace - header()->endOffset);
|
||||
// Zero unused space within itemspace
|
||||
memset(header()->begin() + header()->endOffset, 0, header()->itemSpace - header()->endOffset);
|
||||
|
||||
queue->pager->updatePage(
|
||||
PagerEventReasons::MetaData, nonBtreeLevel, VectorRef<PhysicalPageID>(&pageID, 1), page);
|
||||
@ -803,8 +803,8 @@ public:
|
||||
// Randomly reduce available item space to cause more queue pages to be needed
|
||||
int reducedSpace = deterministicRandom()->randomInt(50, p->itemSpace);
|
||||
|
||||
// Mark the eliminated item space as initialized
|
||||
VALGRIND_MAKE_MEM_DEFINED(header()->begin() + reducedSpace, p->itemSpace - reducedSpace);
|
||||
// Zero the eliminated space
|
||||
memset(header()->begin() + reducedSpace, 0, p->itemSpace - reducedSpace);
|
||||
|
||||
p->itemSpace = reducedSpace;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user