[distcc] Protocol error?

Fergus Henderson fergus at google.com
Tue Jul 22 19:30:03 GMT 2008


Just from a quick glance, this looks like it might be a 64-bit porting
issue.
So a likely work-around is to build with a 32-bit compiler (e.g. set
CC=i486-linux-gnu-gcc before running configure).

But I will take a more detailed look...

On Tue, Jul 22, 2008 at 3:01 PM, Emre Can Sezer <ecsezer at ncsu.edu> wrote:

> I've installed distcc on two computers and I'm trying to build the linux
> kernel.  I'm having difficulty with getting distcc to work.  I get the
> following error on the server side (distccd) when run with verbose:
>
> distccd[12535] (main) chdir to /tmp
> distccd[12535] (dcc_setup_daemon_path) daemon's PATH is
> /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
> distccd[12535] (dcc_listen_by_addr) ERROR: bind of 152.14.92.46:3632
> failed: Address already in use
> distccd[12535] (dcc_exit) exit: code 102; self: 0.000000 user 0.000000
> sys; children: 0.000000 user 0.000000 sys
> distccd[12540] (main) chdir to /tmp
> distccd[12540] (dcc_setup_daemon_path) daemon's PATH is
> /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
> distccd[12540] (dcc_listen_by_addr) listening on 152.14.92.46:3632
> distccd[12540] (dcc_defer_accept) TCP_DEFER_ACCEPT turned on
> distccd[12540] (dcc_standalone_server) 2 CPUs online on this server
> distccd[12540] (dcc_standalone_server) allowing up to 4 active jobs
> distccd[12540] (dcc_ignore_sighup) ignoring SIGHUP
> distccd[12541] (dcc_detach) setsid to session 12541
> distccd[12541] (dcc_log_daemon_started) preforking daemon started (3.0rc2
> i686-pc-linux-gnu, built Jul 22 2008 13:30:26)
> distccd[12541] (dcc_create_kids) up to 1 children
> distccd[12541] (dcc_create_kids) up to 2 children
> distccd[12541] (dcc_create_kids) up to 3 children
> distccd[12541] (dcc_create_kids) up to 4 children
> distccd[12542] (dcc_check_client) connection from 152.14.92.51:47447
> distccd[12542] (dcc_check_address) deny client 0x335c0e98, value
> 0x100007f, mask 0xffffffff
> distccd[12542] (dcc_check_address) match client 0x335c0e98, value
> 0x5c0e98, mask 0xffffff
> distccd[12542] (dcc_r_token_int) got DISTffffffff
> distccd[12542] (dcc_r_request_header) ERROR: can't handle requested
> protocol version is -1
> distccd[12542] (dcc_cleanup_tempfiles_inner) deleted 3 temporary files
> distccd[12542] (dcc_job_summary) client: 152.14.92.51:47447 REJ_BAD_REQ
> exit:0 sig:0 core:0 ret:109 time:0ms
>
>
>
>
> So the protocol token I'm passing is fffffffff.  I confirmed this on the
> client side as well (running distcc in case I'm using the wrong terms).
>
>
>
> ...
> distcc[9560] (dcc_unlock) release lock fd5
> distcc[9560] exec on haemosu,cpp: /usr/bin/gcc -MD -MF init/.version.o.d
> -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/4.2.3/include
> -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef
> -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common
> -Werror-implicit-function-declaration -O2 -fno-stack-protector -m64
> -mtune=generic -mno-red-zone -mcmodel=kernel -funit-at-a-time
> -maccumulate-outgoing-args -pipe -Wno-sign-compare
> -fno-asynchronous-unwind-tables -mno-sse -mno-mmx -mno-sse2 -mno-3dnow
> -Iinclude/asm-x86/mach-default -fomit-frame-pointer -g
> -Wdeclaration-after-statement -Wno-pointer-sign -DKBUILD_STR(s)=#s
> -DKBUILD_BASENAME=KBUILD_STR(version) -DKBUILD_MODNAME=KBUILD_STR(version)
> -c -o init/.tmp_version.o init/version.c -MT init/.tmp_version.o
> distcc[9560] (dcc_note_state) note state 2, file "version.c", host
> "haemosu"
> distcc[9560] (dcc_connect_by_addr) started connecting to 152.14.92.46:3632
> distcc[9560] (dcc_select_for_write) select for write on fd5
> distcc[9560] (dcc_note_state) note state 4, file "(NULL)", host "(NULL)"
> distcc[9560] (dcc_x_token_int) send DISTffffffff
> distcc[9560] (dcc_x_token_int) send CDIR00000022
> distcc[9560] (dcc_x_token_string) send string
> '/home/ecsezer/kernels/linux-2.6.26'
> distcc[9560] (dcc_x_token_int) send ARGC0000002f
> distcc[9560] (dcc_x_token_int) send ARGV0000000c
> distcc[9560] (dcc_x_token_string) send string '/usr/bin/gcc'
> distcc[9560] (dcc_x_token_int) send ARGV00000003
> distcc[9560] (dcc_x_token_string) send string '-MD'
> distcc[9560] (dcc_x_token_int) send ARGV00000003
> distcc[9560] (dcc_x_token_string) send string '-MF'
> distcc[9560] (dcc_x_token_int) send ARGV00000011
> distcc[9560] (dcc_x_token_string) send string 'init/.version.o.d'
> distcc[9560] (dcc_x_token_int) send ARGV00000009
> distcc[9560] (dcc_x_token_string) send string '-nostdinc'
> distcc[9560] (dcc_x_token_int) send ARGV00000008
> distcc[9560] (dcc_x_token_string) send string '-isystem'
> distcc[9560] (dcc_x_token_int) send ARGV0000002b
> distcc[9560] (dcc_x_token_string) send string
> '/usr/lib/gcc/x86_64-linux-gnu/4.2.3/include'
> distcc[9560] (dcc_x_token_int) send ARGV0000000c
> distcc[9560] (dcc_x_token_string) send string '-D__KERNEL__'
> distcc[9560] (dcc_x_token_int) send ARGV00000009
> distcc[9560] (dcc_x_token_string) send string '-Iinclude'
> distcc[9560] (dcc_x_token_int) send ARGV00000008
> distcc[9560] (dcc_x_token_string) send string '-include'
> distcc[9560] (dcc_x_token_int) send ARGV00000018
> distcc[9560] (dcc_x_token_string) send string 'include/linux/autoconf.h'
> distcc[9560] (dcc_x_token_int) send ARGV00000005
> distcc[9560] (dcc_x_token_string) send string '-Wall'
> distcc[9560] (dcc_x_token_int) send ARGV00000007
> distcc[9560] (dcc_x_token_string) send string '-Wundef'
> distcc[9560] (dcc_x_token_int) send ARGV00000013
> distcc[9560] (dcc_x_token_string) send string '-Wstrict-prototypes'
> distcc[9560] (dcc_x_token_int) send ARGV0000000e
> distcc[9560] (dcc_x_token_string) send string '-Wno-trigraphs'
> distcc[9560] (dcc_x_token_int) send ARGV00000014
> distcc[9560] (dcc_x_token_string) send string '-fno-strict-aliasing'
> distcc[9560] (dcc_x_token_int) send ARGV0000000b
> distcc[9560] (dcc_x_token_string) send string '-fno-common'
> distcc[9560] (dcc_x_token_int) send ARGV00000025
> distcc[9560] (dcc_x_token_string) send string
> '-Werror-implicit-function-declaration'
> distcc[9560] (dcc_x_token_int) send ARGV00000003
> distcc[9560] (dcc_x_token_string) send string '-O2'
> distcc[9560] (dcc_x_token_int) send ARGV00000014
> distcc[9560] (dcc_x_token_string) send string '-fno-stack-protector'
> distcc[9560] (dcc_x_token_int) send ARGV00000004
> distcc[9560] (dcc_x_token_string) send string '-m64'
> distcc[9560] (dcc_x_token_int) send ARGV0000000e
> distcc[9560] (dcc_x_token_string) send string '-mtune=generic'
> distcc[9560] (dcc_x_token_int) send ARGV0000000d
> distcc[9560] (dcc_x_token_string) send string '-mno-red-zone'
> distcc[9560] (dcc_x_token_int) send ARGV0000000f
> distcc[9560] (dcc_x_token_string) send string '-mcmodel=kernel'
> distcc[9560] (dcc_x_token_int) send ARGV00000010
> distcc[9560] (dcc_x_token_string) send string '-funit-at-a-time'
> distcc[9560] (dcc_x_token_int) send ARGV0000001a
> distcc[9560] (dcc_x_token_string) send string '-maccumulate-outgoing-args'
> distcc[9560] (dcc_x_token_int) send ARGV00000005
> distcc[9560] (dcc_x_token_string) send string '-pipe'
> distcc[9560] (dcc_x_token_int) send ARGV00000011
> distcc[9560] (dcc_x_token_string) send string '-Wno-sign-compare'
> distcc[9560] (dcc_x_token_int) send ARGV0000001f
> distcc[9560] (dcc_x_token_string) send string
> '-fno-asynchronous-unwind-tables'
> distcc[9560] (dcc_x_token_int) send ARGV00000008
> distcc[9560] (dcc_x_token_string) send string '-mno-sse'
> distcc[9560] (dcc_x_token_int) send ARGV00000008
> distcc[9560] (dcc_x_token_string) send string '-mno-mmx'
> distcc[9560] (dcc_x_token_int) send ARGV00000009
> distcc[9560] (dcc_x_token_string) send string '-mno-sse2'
> distcc[9560] (dcc_x_token_int) send ARGV0000000a
> distcc[9560] (dcc_x_token_string) send string '-mno-3dnow'
> distcc[9560] (dcc_x_token_int) send ARGV0000001e
> distcc[9560] (dcc_x_token_string) send string
> '-Iinclude/asm-x86/mach-default'
> distcc[9560] (dcc_x_token_int) send ARGV00000014
> distcc[9560] (dcc_x_token_string) send string '-fomit-frame-pointer'
> distcc[9560] (dcc_x_token_int) send ARGV00000002
> distcc[9560] (dcc_x_token_string) send string '-g'
> distcc[9560] (dcc_x_token_int) send ARGV0000001d
> distcc[9560] (dcc_x_token_string) send string
> '-Wdeclaration-after-statement'
> distcc[9560] (dcc_x_token_int) send ARGV00000011
> distcc[9560] (dcc_x_token_string) send string '-Wno-pointer-sign'
> distcc[9560] (dcc_x_token_int) send ARGV00000012
> distcc[9560] (dcc_x_token_string) send string '-DKBUILD_STR(s)=#s'
> distcc[9560] (dcc_x_token_int) send ARGV00000025
> distcc[9560] (dcc_x_token_string) send string
> '-DKBUILD_BASENAME=KBUILD_STR(version)'
> distcc[9560] (dcc_x_token_int) send ARGV00000024
> distcc[9560] (dcc_x_token_string) send string
> '-DKBUILD_MODNAME=KBUILD_STR(version)'
> distcc[9560] (dcc_x_token_int) send ARGV00000002
> distcc[9560] (dcc_x_token_string) send string '-c'
> distcc[9560] (dcc_x_token_int) send ARGV00000002
> distcc[9560] (dcc_x_token_string) send string '-o'
> distcc[9560] (dcc_x_token_int) send ARGV00000013
> distcc[9560] (dcc_x_token_string) send string 'init/.tmp_version.o'
> distcc[9560] (dcc_x_token_int) send ARGV0000000e
> distcc[9560] (dcc_x_token_string) send string 'init/version.c'
> distcc[9560] (dcc_x_token_int) send ARGV00000003
> distcc[9560] (dcc_x_token_string) send string '-MT'
> distcc[9560] (dcc_x_token_int) send ARGV00000013
> distcc[9560] (dcc_x_token_string) send string 'init/.tmp_version.o'
> distcc[9560] (dcc_x_token_int) send NFIL0000010e
> distcc[9560] (dcc_x_token_int) send NAME0000003b
> distcc[9560] (dcc_x_token_string) send string
> '/home/ecsezer/kernels/linux-2.6.26/include/linux/autoconf.h'
> distcc[9560] (dcc_x_file) send 27349 byte file
>
> /dev/shm/tmp3AYAwj.include_server-6245-1/home/ecsezer/kernels/linux-2.6.26/include/linux/autoconf.h.lzo
> with token FILE and compression 69
> distcc[9560] (dcc_x_token_int) send FILE00006ad5
> distcc[9560] (dcc_pump_sendfile) sendfile: partial transmission of 10147
> bytes; retrying 17202 @10147
> distcc[9560] (dcc_select_for_write) select for write on fd5
> distcc[9560] (dcc_pump_sendfile) select() returned, continuing to write
> distcc[9560] (dcc_pump_sendfile) ERROR: sendfile failed: Connection reset
> by peer
> distcc[9560] (dcc_x_token_int) send NAME00000036
> distcc[9560] (dcc_writex) ERROR: failed to write: Broken pipe
> distcc[9560] (dcc_mark_timefile) mark
> /home/ecsezer/.distcc/lock/backoff_tcp_haemosu_3632_0
> distcc[9560] (dcc_unlock) release lock fd4
> distcc[9560] Warning: failed to distribute init/version.c to haemosu,cpp,
> running locally instead
> ...
>
>
>
> I'm running Ubuntu8.04 on a x86-64.  I've tried both the release and the
> svn repository versions.  I'd appreciate any help.
>
> Thanks,
>
> JohnS
>
>
> __
> distcc mailing list            http://distcc.samba.org/
> To unsubscribe or change options:
> https://lists.samba.org/mailman/listinfo/distcc
>



-- 
Fergus Henderson <fergus at google.com>
-------------- next part --------------
HTML attachment scrubbed and removed


More information about the distcc mailing list