[distcc] Corrupted object files when using ccache + distcc

Martin Pool mbp at sourcefrog.net
Mon Aug 25 03:01:58 GMT 2003


On Sun, 24 Aug 2003 17:19:16 +1000
Martin Pool <mbp at sourcefrog.net> wrote:

> On 24 Aug 2003, Gavrie Philipson <gavrie at disksites.com> wrote:
> 
> > > Does it work if you use a ccache on some other filesystem?
> > 
> > I just tried it with a local filesystem, and it indeed works
> > perfectly. However, since the cache is supposed to be shared by
> > several machines, it must reside on an NFS filesystem. Doesn't
> > ccache support an NFS-mounted cache directory? I couldn't find
> > anything in the docs about that...
> 
> Yes, it ought to work.  I was just asking to try to narrow the problem
> down.  Let me see if I can work out what's going wrong.

After checking with the way other programs do it I think distcc's use of
mmap in dcc_r_plain is correct.  (Wayne, could you check?)

I think you may have found some kind of kernel NFS bug.  Could you
please do a couple more things to help narrow it down?

1 - get an strace of the client, with something like this:

  DISTCC_HOSTS=otherhost strace -f /tmp/trace.out distcc -c hello.c \
    /disksites/hello.o

2 - get a tcpdump of the NFS traffic by running something like this:

  tcpdump -s8000 -w /tmp/distcc.tcpdump 'udp host nfsserver'

Press C-c after running the compilation.

Thanks,
Martin




More information about the distcc mailing list