diff --git a/compiler-rt/lib/profile/GCDAProfiling.c b/compiler-rt/lib/profile/GCDAProfiling.c --- a/compiler-rt/lib/profile/GCDAProfiling.c +++ b/compiler-rt/lib/profile/GCDAProfiling.c @@ -303,16 +303,11 @@ mmap_handle = NULL; #else - if (msync(write_buffer, file_size, MS_SYNC) == -1) { + if (munmap(write_buffer, file_size) == -1) { int errnum = errno; - fprintf(stderr, "profiling: %s: cannot msync: %s\n", filename, + fprintf(stderr, "profiling: %s: cannot munmap: %s\n", filename, strerror(errnum)); } - - /* We explicitly ignore errors from unmapping because at this point the data - * is written and we don't care. - */ - (void)munmap(write_buffer, file_size); #endif write_buffer = NULL;