Another crash: Program terminated with signal 11, Segmentation fault.#0 dht_inode_ctx_time_update (inode=0xb15fa480, this=0xba0e4000, stat=0x0, post=1) at dht-helper.c:944944 DHT_UPDATE_TIME(time->mtime, time->mtime_nsec, #0 dht_inode_ctx_time_update (inode=0xb15fa480, this=0xba0e4000, stat=0x0, post=1) at dht-helper.c:944 #1 0xb9e963d2 in dht_revalidate_cbk (frame=0xbb387930, cookie=0xbb3856a0, this=0xba0e4000, op_ret=-1, op_errno=57, inode=0x0, stbuf=0x0, xattr=0x0, postparent=0x0) at dht-common.c:703 #2 0xb9f03967 in afr_lookup (frame=0xbb3856a0, this=0xba0e3000, loc=0xb9418f98, xattr_req=0xb12775f0) at afr-common.c:2378 #3 0xb9ea1b5c in dht_lookup (frame=0xbb387930, this=0xba0e4000, loc=0xb144b810, xattr_req=0xb12775f0) at dht-common.c:1491 #4 0xbb79e7e1 in default_lookup (frame=0xbb387930, this=0xba0e5000, loc=0xb144b810, xdata=0xb12775f0) at defaults.c:1253 #5 0xbb79e7e1 in default_lookup (frame=0xbb387930, this=0xba0e6000, loc=0xb144b810, xdata=0xb12775f0) at defaults.c:1253 #6 0xb9e639e9 in ioc_lookup (frame=0xbb388030, this=0xba0e7000, loc=0xb144b810, xdata=0xb12775f0) at io-cache.c:283 #7 0xb9e54afc in qr_lookup (frame=0xbb389a00, this=0xba0e8000, loc=0xb144b810, xdata=0xb12775f0) at quick-read.c:560 #8 0xb9e4aa39 in mdc_lookup (frame=0xbb3874d0, this=0xba0e9000, loc=0xb144b810, xdata=0x0) at md-cache.c:753 #9 0xb9e3573e in io_stats_lookup (frame=0xbb385a90, this=0xba0ea000, loc=0xb144b810, xdata=0x0) at io-stats.c:1864 #10 0xb9ff4cd8 in fuse_lookup_resume (state=0xb144b800) at fuse-bridge.c:518 #11 0xb9fde905 in fuse_resolve_done (state=<optimized out>) at fuse-resolve.c:647 #12 fuse_resolve_all (state=<optimized out>) at fuse-resolve.c:676 #13 0xb9fde498 in fuse_resolve (state=0xb144b800) at fuse-resolve.c:633 #14 0xb9fde93d in fuse_resolve_all (state=<optimized out>) at fuse-resolve.c:672 #15 0xb9fde1b7 in fuse_resolve_continue (state=0xb144b800) at fuse-resolve.c:692 #16 0xb9fde319 in fuse_resolve_parent (state=0xb144b800) at fuse-resolve.c:300 #17 0xb9fde4a5 in fuse_resolve (state=0xb144b800) at fuse-resolve.c:626 #18 0xb9fde921 in fuse_resolve_all (state=<optimized out>) at fuse-resolve.c:665 #19 0xb9fdede7 in fuse_resolve_and_resume (state=0xb144b800, fn=0xb9ff4a84 <fuse_lookup_resume>) at fuse-resolve.c:705 #20 0xb9fe3fae in fuse_lookup (this=0xba0b1000, finh=0xb5691320, msg=0xb5691348) at fuse-bridge.c:533 #21 0xb9ff6f6e in fuse_thread_proc (data=0xba0b1000) at fuse-bridge.c:4417 #22 0xbb75a4ea in ?? () from /usr/lib/libpthread.so.1 #23 0xbb507ea0 in ___lwp_park50 () from /usr/lib/libc.so.12 (gdb) list 939 return -1; 940 } 941 942 time = &ctx->time; 943 944 DHT_UPDATE_TIME(time->mtime, time->mtime_nsec, 945 stat->ia_mtime, stat->ia_mtime_nsec, inode, post); 946 DHT_UPDATE_TIME(time->ctime, time->ctime_nsec, 947 stat->ia_ctime, stat->ia_ctime_nsec, inode, post); 948 DHT_UPDATE_TIME(time->atime, time->atime_nsec, (gdb) print stat $1 = (struct iatt *) 0x0 It is worth noting that stat is always NULL, as it is set here: (gdb) frame 2 #2 0xb9f03967 in afr_lookup (frame=0xbb3856a0, this=0xba0e3000, loc=0xb9418f98, xattr_req=0xb12775f0) at afr-common.c:2378 2378 AFR_STACK_UNWIND (lookup, frame, -1, op_errno, (gdb) list 2373 } 2374 2375 ret = 0; 2376 out: 2377 if (ret) 2378 AFR_STACK_UNWIND (lookup, frame, -1, op_errno, 2379 NULL, NULL, NULL, NULL); 2380 2381 return 0; 2382 } Shall I just return if stat == NULL in dht_inode_ctx_time_update()? -- Emmanuel Dreyfus http://hcpnet.free.fr/pubz manu@xxxxxxxxxx