[distcc] Re: Incorrect time stamp of generated object file when using distcc with makepp

John S. Yates, Jr. jyates at netezza.com
Mon Aug 30 19:42:18 GMT 2004


Looks to me like dcc_r_bulk_plain() is missing an msync(,,MS_SYNC).

>From munmap man page:

The st_ctime and st_mtime field for a file mapped with PROT_WRITE and
MAP_SHARED will be updated after a write to the mapped region, and before a
subsequent msync() with the MS_SYNC or MS_ASYNC flag, if one occurs.

And from msync man page:

msync flushes changes made to the in-core copy of a file that was mapped
into memory using mmap(2) back to disk. Without use of this call there is no
guarantee that changes are written back before munmap(2) is called. To be
more precise, the part of the file that corresponds to the memory area
starting at start and having length length is updated. The flags argument
may have the bits MS_ASYNC, MS_SYNC and MS_INVALIDATE set, but not both
MS_ASYNC and MS_SYNC. MS_ASYNC specifies that an update be scheduled, but
the call returns immediately. MS_SYNC asks for an update and waits for it to
complete.

/john






More information about the distcc mailing list