bufmgr: Fix valgrind checking for buffers pinned in StrategyGetBuffer()

Andres Freund <andres@anarazel.de>

Commit: c819d1017ddb349d92ab323d2631bc1f10bb4e86
Author: Andres Freund <andres@anarazel.de>
Date: 2025-10-09T23:17:13Z
bufmgr: Fix valgrind checking for buffers pinned in StrategyGetBuffer()

In 5e899859287 I made StrategyGetBuffer() pin buffers with a single CAS,
instead of using PinBuffer_Locked(). Unfortunately I missed that
PinBuffer_Locked() marked the page as defined for valgrind.

Fix this oversight by centralizing the valgrind initialization into
TrackNewBufferPin(), which also allows us to reduce the number of places doing
VALGRIND_MAKE_MEM_DEFINED.

Per buildfarm animal skink and Amit Langote.

Discussion: https://postgr.es/m/fvfmkr5kk4nyex56ejgxj3uzi63isfxovp2biecb4bspbjrze7@az2pljabhnff
Discussion: https://postgr.es/m/CA+HiwqGKJ6nEXEPQW7EpykVsEtzxp5-up_xhtcUAkWFtATVQvQ@mail.gmail.com

Files

PathChange+/−
src/backend/storage/buffer/bufmgr.c modified +16 −16

Discussion