postgres.git / summary / log / commit / refs
commit cc3c4af4a948e5c5be22afe769bab41235c574e5
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: Fri Nov 24 18:43:34 2017 +0000
Fix bug in generation.c's valgrind support.
This doesn't look like the last such bug, but it's one that the
test_decoding regression test is tripping over. Per buildfarm.
Tomas Vondra
Discussion: https://postgr.es/m/c903f275-2150-fa52-64bf-dca7b53ebf8d@fuzzy.cz
src/backend/utils/mmgr/generation.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/backend/utils/mmgr/generation.c b/src/backend/utils/mmgr/generation.c
index 2ede8e1be93..a748ee266c2 100644
--- a/src/backend/utils/mmgr/generation.c
+++ b/src/backend/utils/mmgr/generation.c
@@ -409,9 +409,14 @@ GenerationAlloc(MemoryContext context, Size size)
chunk = (GenerationChunk *) block->freeptr;
+ /* Prepare to initialize the chunk header. */
+ VALGRIND_MAKE_MEM_UNDEFINED(chunk, Generation_CHUNKHDRSZ);
+
block->nchunks += 1;
block->freeptr += (Generation_CHUNKHDRSZ + chunk_size);
+ Assert(block->freeptr <= block->endptr);
+
chunk->block = block;
chunk->context = set;
[parent: 9c55391f0f27]