Package: rsync
Version: 3.0.3-2
Severity: normal

I am sorry for this quite generic subject, but this is it: rsync segfaults 
while rsyncing.

Situation:

 hild(laptop)                    skuld (workstation, segfaulting receiver)

  / (/dev/hda1) -------------->  /mnt/backup 
(/mnt/mybook/backup/hild-backup.img ext3 via loop)

hild is running the rsync-daemon (as root) and skuld uses '/usr/bin/rsync
-aHAXxv --progress --delete-before --stats --numeric-ids hild::root/
/mnt/backup/hild' to backup the while /-filesystem from hild to an ext3 on a
loop-file.

After some rsyncing, one part of the receiving rsync segfaults, the other part
stays alive (see further down).

I recompiled it with debug,nostrip to gather the following backtrace.

It dies inside while rsyncing my cowbuilder chroot(), to my totally uneducated
eye (and brain) this looks like a problem with -X, because rsync is able to
complete the job while not using -X.

Kernel is configured with XATTR support:

CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_EXT3_FS_SECURITY=y

but the mount of the target filesystem does not use it:

/mnt/mybook/backup/hild-backup.img on /mnt/backup type ext3 (rw,loop=/dev/loop0)

-------------------------------------------------------------------------------

(gdb) bt
#0  0x08080403 in xattr_diff (file=0xb534a220, sxp=0xbfbab7fc, find_all=1) at 
xattrs.c:445
#1  0x0805556c in itemize (
    fnamecmp=0xbfbaa79c 
"var/cache/pbuilder/base.cow/usr/share/man/man8/fsck.ext2.8.gz", 
    file=0xb534a220, ndx=616834, statret=0, sxp=0xbfbab7fc, iflags=20488, 
fnamecmp_type=0 '\0', 
    xname=0xbfbab8cc 
"var/cache/pbuilder/base.cow/usr/share/man/man8/e2fsck.8.gz")
    at generator.c:676
#2  0x080766fb in maybe_hard_link (file=0xb534a220, ndx=616834, 
    fname=0xbfbaa79c 
"var/cache/pbuilder/base.cow/usr/share/man/man8/fsck.ext2.8.gz", statret=0, 
    sxp=0xbfbab7fc, 
    oldname=0xbfbab8cc 
"var/cache/pbuilder/base.cow/usr/share/man/man8/e2fsck.8.gz", 
    old_stp=0xbfbab79c, 
    realname=0xbfbab8cc 
"var/cache/pbuilder/base.cow/usr/share/man/man8/e2fsck.8.gz", 
    itemizing=1, code=FLOG) at hlink.c:235
#3  0x080774c8 in finish_hard_link (file=0xb534a220, 
    fname=0xbfbab8cc 
"var/cache/pbuilder/base.cow/usr/share/man/man8/e2fsck.8.gz", 
    fin_ndx=616824, stp=0xbfbab79c, itemizing=1, code=FLOG, alt_dest=-1) at 
hlink.c:495
#4  0x08059d31 in check_for_finished_files (itemizing=1, code=FLOG, 
check_redo=0)
    at generator.c:2085
#5  0x0805a676 in generate_files (f_out=5, local_name=0x0) at generator.c:2262
#6  0x080663fc in do_recv (f_in=5, f_out=5, local_name=0x0) at main.c:848
#7  0x08066c33 in client_run (f_in=5, f_out=5, pid=-1, argc=1, argv=0x80b9a04) 
at main.c:1086
#8  0x08085034 in start_socket_client (host=0x80b9bb0 "hild", remote_argc=1, 
    remote_argv=0x80b9a00, argc=1, argv=0x80b9a04) at clientserver.c:130
#9  0x080672eb in start_client (argc=1, argv=0x80b9a04) at main.c:1252
#10 0x08067bed in main (argc=2, argv=0x80b9a00) at main.c:1520


(gdb) bt full
#0  0x08080403 in xattr_diff (file=0xb534a220, sxp=0xbfbab7fc, find_all=1) at 
xattrs.c:445
        lst = (item_list *) 0x80cdc80
        snd_rxa = (rsync_xa *) 0x807e240
        rec_rxa = (rsync_xa *) 0xbfbaa79c
        snd_cnt = 1
        rec_cnt = 0
        cmp = 1
        same = 135028592
        xattrs_equal = 1
#1  0x0805556c in itemize (
    fnamecmp=0xbfbaa79c 
"var/cache/pbuilder/base.cow/usr/share/man/man8/fsck.ext2.8.gz", 
    file=0xb534a220, ndx=616834, statret=0, sxp=0xbfbab7fc, iflags=20488, 
fnamecmp_type=0 '\0', 
    xname=0xbfbab8cc 
"var/cache/pbuilder/base.cow/usr/share/man/man8/e2fsck.8.gz")
    at generator.c:676
        keep_time = 1
#2  0x080766fb in maybe_hard_link (file=0xb534a220, ndx=616834, 
    fname=0xbfbaa79c 
"var/cache/pbuilder/base.cow/usr/share/man/man8/fsck.ext2.8.gz", statret=0, 
    sxp=0xbfbab7fc, 
    oldname=0xbfbab8cc 
"var/cache/pbuilder/base.cow/usr/share/man/man8/e2fsck.8.gz", 
    old_stp=0xbfbab79c, 
    realname=0xbfbab8cc 
"var/cache/pbuilder/base.cow/usr/share/man/man8/e2fsck.8.gz", 
    itemizing=1, code=FLOG) at hlink.c:235
No locals.
#3  0x080774c8 in finish_hard_link (file=0xb534a220, 
    fname=0xbfbab8cc 
"var/cache/pbuilder/base.cow/usr/share/man/man8/e2fsck.8.gz", 
    fin_ndx=616824, stp=0xbfbab79c, itemizing=1, code=FLOG, alt_dest=-1) at 
hlink.c:495
        val = 16877
        prev_sx = {st = {st_dev = 1792, __pad1 = 0, __st_ino = 3468167, st_mode 
= 33188, 
    st_nlink = 4, st_uid = 0, st_gid = 0, st_rdev = 0, __pad2 = 0, st_size = 
4399, 
    st_blksize = 4096, st_blocks = 16, st_atim = {tv_sec = 1220735316, tv_nsec 
= 0}, st_mtim = {
      tv_sec = 1220364535, tv_nsec = 0}, st_ctim = {tv_sec = 1220735316, 
tv_nsec = 0}, 
    st_ino = 3468167}, acc_acl = 0x85f0888, def_acl = 0x0, xattr = 0xb}
        st = {st_dev = 1792, __pad1 = 0, __st_ino = 3468166, st_mode = 33188, 
st_nlink = 1, 
  st_uid = 0, st_gid = 0, st_rdev = 0, __pad2 = 0, st_size = 4399, st_blksize = 
4096, 
  st_blocks = 16, st_atim = {tv_sec = 1220735316, tv_nsec = 0}, st_mtim = 
{tv_sec = 1220627995, 
    tv_nsec = 0}, st_ctim = {tv_sec = 1220735316, tv_nsec = 0}, st_ino = 
3468166}
        prev_name = 
"var/cache/pbuilder/base.cow/usr/share/man/man8/fsck.ext2.8.gz\000º¿ö\026÷·`\221\005žà\177,\bØ\177,\b\000\000\000\000\000\000\000\000p¬\004\b\bšº¿\201\031\005\bà\177,\b\004\000\000\000Hžº¿!L\005\b",
 '\0' <repeats 24 times>, 
"home/oweh/.mozilla/firefox/xej5lu7y.default/Cache/030D8C89d01", '\0' <repeats 
195 times>, "üÔð"...
        alt_name = 
"\000\000\000\000ò\017\000\000Úžº¿`\200,\b\000\000\000\000\000\000\000\000\002\000\000\000c\204,\b\000\000\000\000à\177,\b\000\000\000\000\bšº¿\207)\005\bà\177,\b\000\000\000\000Ìžº¿\r",
 '\0' <repeats 19 times>, "à\177,\bÿÿÿÿ", '\0' <repeats 468 times>, "Z\004Ì·", 
'\0' <repeats 32 times>, "D\232º¿ 
\020Ì·à\017Ì·H\232º¿\000\000\000\000\001\000\000\000ô\233º¿", '\0' <repeats 16 
times>, 
"8\234\v\b ¯\v\b\000\000\000\000š¯\v\bà\233º¿ß\237º¿P\232º¿\000\000\000\000\000\000\000\000ô\233º¿ô\233º¿ø¯\v\b\000\000\000\000\000\000\000"...
        our_name = 0xbfbab8cc 
"var/cache/pbuilder/base.cow/usr/share/man/man8/e2fsck.8.gz"
        flist = (struct file_list *) 0x80baf10
        prev_statret = 0
        ndx = 616834
        prev_ndx = 616835
        __PRETTY_FUNCTION__ = "finish_hard_link"
#4  0x08059d31 in check_for_finished_files (itemizing=1, code=FLOG, 
check_redo=0)
    at generator.c:2085
        file = (struct file_struct *) 0xb534d49c
        flist = (struct file_list *) 0x80baf10
        fbuf = 
"var/cache/pbuilder/base.cow/usr/share/man/man8/e2fsck.8.gz\000z\000ide.8.gz\000z\000gz\000hp?version=2.0.png\000\000png\0000&type=com_content&task=blogcategory&id=0&Itemid=33.png\000on/Types.xcu\000\000tml.svn-base\000\000žPÃ\005ž\003\000\000\000\bºº¿œ\003\nž"...
        ndx = 616824
        __PRETTY_FUNCTION__ = "check_for_finished_files"
#5  0x0805a676 in generate_files (f_out=5, local_name=0x0) at generator.c:2262
        file = (struct file_struct *) 0xb52a58f8
        i = 621178
        ndx = 621178
        next_loopchk = 621200
        fbuf = 
"var/cache/pbuilder/base.cow/var/lib/dpkg/info/dpkg-dev.list\000iles\000s\000s\000ng.prerm\000st\000main_binary-i386_Packages.IndexDiff\000ackages\000ff\000p\000\000p\000ko\000es\000lp\000e\000\000se\000\000e\000base\000n-base\000se\000e\000html.svn-base\000\000\000§\001\000\000Ø®\v\b\220m\tžñ\001Ì·"...
        itemizing = 1
        code = FLOG
        save_do_progress = 1
#6  0x080663fc in do_recv (f_in=5, f_out=5, local_name=0x0) at main.c:848
        pid = 9894
        exit_code = 0
        error_pipe = {6, 7}
#7  0x08066c33 in client_run (f_in=5, f_out=5, pid=-1, argc=1, argv=0x80b9a04) 
at main.c:1086
        flist = (struct file_list *) 0x80baf10
        exit_code = 0
        exit_code2 = 0
        local_name = 0x0
#8  0x08085034 in start_socket_client (host=0x80b9bb0 "hild", remote_argc=1, 
    remote_argv=0x80b9a00, argc=1, argv=0x80b9a04) at clientserver.c:130
        fd = 5
        ret = 0
        p = 0x0
        user = 0x0
#9  0x080672eb in start_client (argc=1, argv=0x80b9a04) at main.c:1252
        p = 0x8062e2b "£€x\v\b\203}\b"
        shell_machine = 0x80b9bb0 "hild"
        shell_user = 0x0
        remote_argv = (char **) 0x80b9a00
        remote_argc = 1
        f_in = 134524016
        f_out = 134839248
        ret = 0
        pid = 0
        dotarg = {0x809a0c9 "."}
#10 0x08067bed in main (argc=2, argv=0x80b9a00) at main.c:1520
        ret = 134897912
        orig_argc = 8
        code = FLOG
        save_do_progress = 1
        orig_argv = (char **) 0xbfbafc14
        sigmask = {__val = {84483, 0 <repeats 31 times>}}

[EMAIL PROTECTED]:~# ps auwx | grep [r]sync
root      9894 18.1  2.3  54164 48600 pts/2    S    23:01   1:48 /usr/bin/rsync 
-aHAXxv --progress --delete-before --stats --numeric-ids hild::root/ 
/mnt/backup/hild

[EMAIL PROTECTED]:~# lsof -p 9894
COMMAND  PID USER   FD   TYPE     DEVICE     SIZE    NODE NAME
rsync   9894 root  cwd    DIR        7,0     4096 3416065 /mnt/backup/hild
rsync   9894 root  rtd    DIR        9,0     4096       2 /
rsync   9894 root  txt    REG      253,0   762771 1786173 /usr/bin/rsync
rsync   9894 root  mem    REG        9,0    42504 1123987 
/lib/i686/cmov/libnss_files-2.7.so
rsync   9894 root  mem    REG      253,0     9476   66508 
/usr/lib/gconv/ISO8859-15.so
rsync   9894 root  mem    REG      253,0 85991200  115245 
/usr/lib/locale/locale-archive
rsync   9894 root  mem    REG        9,0    14744 1107652 /lib/libattr.so.1.1.0
rsync   9894 root  mem    REG        9,0  1413540 1123935 
/lib/i686/cmov/libc-2.7.so
rsync   9894 root  mem    REG        9,0    33284 1107690 /lib/libpopt.so.0.0.0
rsync   9894 root  mem    REG        9,0    24800 1107650 /lib/libacl.so.1.1.0
rsync   9894 root  mem    REG      253,0    25700   65603 
/usr/lib/gconv/gconv-modules.cache
rsync   9894 root  mem    REG        9,0    67408 1123994 
/lib/i686/cmov/libresolv-2.7.so
rsync   9894 root  mem    REG        9,0    17880 1123947 
/lib/i686/cmov/libnss_dns-2.7.so
rsync   9894 root  mem    REG        9,0   113248 1107641 /lib/ld-2.7.so
rsync   9894 root    0u   CHR      136,2                4 /dev/pts/2
rsync   9894 root    1u   CHR      136,2                4 /dev/pts/2
rsync   9894 root    2u   CHR      136,2                4 /dev/pts/2
rsync   9894 root    3r  FIFO        0,5            50096 pipe
rsync   9894 root    4w  FIFO        0,5            50096 pipe
rsync   9894 root    5u  IPv6      50308              TCP 
skuld.feds.ath.cx:58331->hild.feds.ath.cx:rsync (ESTABLISHED)
rsync   9894 root    7u  unix 0xeb6ce000            59941 socket


-- System Information:
Debian Release: lenny/sid
  APT prefers unstable
  APT policy: (990, 'unstable'), (200, 'experimental')
Architecture: i386 (i686)

Kernel: Linux 2.6.26.3-315 (PREEMPT)
Locale: [EMAIL PROTECTED], [EMAIL PROTECTED] (charmap=ISO-8859-15)
Shell: /bin/sh linked to /bin/bash

Versions of packages rsync depends on:
ii  base-files                    4.0.5      Debian base system miscellaneous f
ii  libacl1                       2.2.47-2   Access control list shared library
ii  libc6                         2.7-13     GNU C Library: Shared libraries
ii  libpopt0                      1.14-4     lib for parsing cmdline parameters
ii  lsb-base                      3.2-20     Linux Standard Base 3.2 init scrip

rsync recommends no packages.

Versions of packages rsync suggests:
ii  openssh-client                1:5.1p1-2  secure shell client, an rlogin/rsh
ii  openssh-server                1:5.1p1-2  secure shell server, an rshd repla

-- no debconf information



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to