stack overflow

Andrew Ivanov happyfrog at hotbox.ru
Wed Sep 25 10:17:00 EST 2002


Hi everybody,

I use rsync v2.5.5 almost without problems,
but it dumps core from time to time.

Core was generated by `rsync'.
Program terminated with signal 11, Segmentation fault.

There is excerpt from gdb's bt:

#0  0x2810106f in __sfvwrite () from /usr/lib/libc.so.4
#1  0x280fdfe1 in fprintf () from /usr/lib/libc.so.4
#2  0x281002b6 in vfprintf () from /usr/lib/libc.so.4
#3  0x280c98be in vsnprintf () from /usr/lib/libc.so.4
#4  0x80522f5 in rprintf (code=FERROR,
    format=0x8069920 "rsync error: %s (code %d) at %s(%
d)\n") at log.c:295
#5  0x8052944 in log_exit (code=13, 
file=0x8069799 "log.c", line=279)
    at log.c:564
#6  0x804c655 in _exit_cleanup (code=13, 
file=0x8069799 "log.c", line=279)
    at cleanup.c:87

#7  0x80522a8 in rwrite (code=FERROR,
    buf=0xbbc00888 "rsync error: errors with program 
diagnostics (code 13) at log.c(279)\n", len=69) at 
log.c:279
#8  0x805236a in rprintf (code=FERROR,
    format=0x8069920 "rsync error: %s (code %d) at %s(%
d)\n") at log.c:324
#9  0x8052944 in log_exit (code=13, 
file=0x8069799 "log.c", line=279)
    at log.c:564
#10 0x804c655 in _exit_cleanup (code=13, 
file=0x8069799 "log.c", line=279)
    at cleanup.c:87

#11 0x80522a8 in rwrite (code=FERROR,
    buf=0xbbc00d78 "rsync error: errors with program 
diagnostics (code 13) at log.c(279)\n", len=69) at 
log.c:279
#12 0x805236a in rprintf (code=FERROR,
    format=0x8069920 "rsync error: %s (code %d) at %s(%
d)\n") at log.c:324
#13 0x8052944 in log_exit (code=13, 
file=0x8069799 "log.c", line=279)
    at log.c:564
#14 0x804c655 in _exit_cleanup (code=13, 
file=0x8069799 "log.c", line=279)
    at cleanup.c:87

#15 0x80522a8 in rwrite (code=FERROR,
    buf=0xbbc01268 "rsync error: errors with program 
diagnostics (code 13) at log.c(279)\n", len=69) at 
log.c:279
#16 0x805236a in rprintf (code=FERROR,
    format=0x8069920 "rsync error: %s (code %d) at %s(%
d)\n") at log.c:324
#17 0x8052944 in log_exit (code=13, 
file=0x8069799 "log.c", line=279)
    at log.c:564
#18 0x804c655 in _exit_cleanup (code=13, 
file=0x8069799 "log.c", line=279)
    at cleanup.c:87

<skipped>

#212339 0x80522a8 in rwrite (code=FERROR,
    buf=0xbfbfd9d8 "rsync error: errors with program 
diagnostics (code 13) at log.c(279)\n", len=69) at 
log.c:279
#212340 0x805236a in rprintf (code=FERROR,
    format=0x8069920 "rsync error: %s (code %d) at %s(%
d)\n") at log.c:324
#212341 0x8052944 in log_exit (code=13, 
file=0x8069799 "log.c", line=279)
    at log.c:564
#212342 0x804c655 in _exit_cleanup (code=13, 
file=0x8069799 "log.c", line=279)
    at cleanup.c:87

#212343 0x80522a8 in rwrite (code=FERROR,
    buf=0xbfbfdec8 "rsync: error writing 69 unbuffered 
bytes - exiting: Broken pipe\n", len=64) at log.c:279
#212344 0x805236a in rprintf (code=FERROR,
    format=0x806c280 "rsync: error writing %d 
unbuffered bytes - exiting: %s\n") at log.c:324
#212345 0x8056e81 in writefd_unbuffered (fd=1, 
buf=0xbfbfe468 "A", len=69)
    at io.c:459
#212346 0x8056ff8 in mplex_write (fd=1, code=FERROR,
    buf=0xbfbff510 "rsync: connection unexpectedly 
closed (232684 bytes read so far)\n", len=65) at 
io.c:516
#212347 0x8057382 in io_multiplex_write (code=FERROR,
    buf=0xbfbff510 "rsync: connection unexpectedly 
closed (232684 bytes read so far)\n", len=65) at 
io.c:697
#212348 0x80521dc in rwrite (code=FERROR,
    buf=0xbfbff510 "rsync: connection unexpectedly 
closed (232684 bytes read so far)\n", len=65) at 
log.c:245
#212349 0x805668f in read_error_fd () at io.c:119
#212350 0x805688e in read_timeout (fd=3,
    buf=0xbfbffb14 "яяяяHы╖╖╓_\004\b\003", len=4) at 
io.c:216
#212351 0x80569c2 in read_unbuffered (fd=3,
    buf=0xbfbffb14 "яяяяHы╖╖╓_\004\b\003", len=4) at 
io.c:274
#212352 0x8056b3a in readfd (fd=3, 
buffer=0xbfbffb14 "яяяяHы╖╖╓_\004\b\003",
    N=4) at io.c:329
#212353 0x8056b6f in read_int (f=3) at io.c:342
#212354 0x804b4ba in generate_files (f=1, 
flist=0x807b110, local_name=0x0,
    f_recv=3) at generator.c:528
#212355 0x804fec1 in do_recv (f_in=0, f_out=1, 
flist=0x807b110, local_name=0x0)
    at main.c:420
#212356 0x80500da in do_server_recv (f_in=0, f_out=1, 
argc=2, argv=0x8078060)
    at main.c:491
#212357 0x8050188 in start_server (f_in=0, f_out=1, 
argc=2, argv=0x8078060)
    at main.c:519
#212358 0x80509cb in main (argc=2, argv=0x8078060) at 
main.c:918
#212359 0x804a01d in _start ()

Apparently, there is infinite call loop, which leads
to stack overflow.
Can you please take a look at that?
More details will be provided by request.

Best regards,
Andrew.



More information about the rsync mailing list