Hi,
On 11/7/18 7:26 AM, Jesper Pedersen wrote:
On 11/6/18 4:04 PM, Thomas Munro wrote:
On Wed, Nov 7, 2018 at 4:42 AM Jesper Pedersen
Thanks! Pushed. I'll keep an eye on the build farm to see if
anything breaks on Cygwin or some other frankenOS.
There is [1] on Andres' skink setup. Looking.
Attached is a reproducer.
Adding the memset() command for the page makes valgrind happy.
Thoughts on how to proceed with this ? The report in [1] shows that
there are a number of call sites where the page(s) aren't fully initialized.
[1]
https://www.postgresql.org/message-id/3fe1e38a-fb70-6260-9300-ce67ede21c32%40redhat.com
Best regards,
Jesper
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
int main(int argc, const char* argv[])
{
FILE* f;
int fd;
void* m;
ssize_t written;
f = fopen("test.bin", "w+");
if (f == NULL)
{
printf("Cannot open file\n");
exit(0);
}
fd = fileno(f);
m = malloc((size_t)8192);
// memset(m, 0, (size_t)8192); <-- will make valgrind succeed
written = pwrite(fd, m, (size_t)8192, (off_t)0);
printf("Written: %i\n", written);
free(m);
fclose(f);
return 0;
}