From: SourceForge.net <no...@so...> - 2009-02-10 20:58:17
|
Bugs item #2176188, was opened at 2008-10-18 09:20 Message generated for change (Comment added) made by henryn You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=622063&aid=2176188&group_id=98788 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. >Category: Daemons (Windows) Group: v0.8.x (devel) >Status: Closed Resolution: Fixed Priority: 5 Private: No Submitted By: Nobody/Anonymous (nobody) Assigned to: Henry N. (henryn) Summary: file sync wrong on cofs, command after mv/rename fails Initial Comment: I found some problem in cofs filesystem. ex: mv t1 t2 stat t2 many times I got "t2 not found". it see like the second command exec before the first finished. ---------------------------------------------------------------------- >Comment By: Henry N. (henryn) Date: 2009-02-10 21:58 Message: Think, can close this bug now. ---------------------------------------------------------------------- Comment By: Henry N. (henryn) Date: 2008-11-30 01:30 Message: The d_move patch was replaced by inode_rename patch on host side, see SVN revision r1148 + r1149. ---------------------------------------------------------------------- Comment By: Henry N. (henryn) Date: 2008-11-12 19:59 Message: Your patch was committed to SVN as revision r1133. Thanks! ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2008-11-12 16:28 Message: chenm001 (chenm003 AT 163 DOT com) if this patch has any bug, please tell me, I will tract again. ---------------------------------------------------------------------- Comment By: Henry N. (henryn) Date: 2008-11-12 01:26 Message: Yes, that solved this bug. NFS does it too. So it it very good. Thanks. What name I can honor in SVN? :-) Henry ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2008-11-11 10:19 Message: Here is my patch, I do not known it is good way, but it work fine in my computer. static int fuse_rename(struct inode *olddir, struct dentry *oldent, struct inode *newdir, struct dentry *newent) { struct fuse_conn *fc = INO_FC(olddir); struct fuse_in in = FUSE_IN_INIT; struct fuse_out out = FUSE_OUT_INIT; struct fuse_rename_in inarg; memset(&inarg, 0, sizeof(inarg)); inarg.newdir = newdir->i_ino; in.h.opcode = FUSE_RENAME; in.h.ino = olddir->i_ino; in.numargs = 3; in.args[0].size = sizeof(inarg); in.args[0].value = &inarg; in.args[1].size = oldent->d_name.len + 1; in.args[1].value = oldent->d_name.name; in.args[2].size = newent->d_name.len + 1; in.args[2].value = newent->d_name.name; request_send(fc, &in, &out); if (!out.h.error) { uncache_dir(olddir); + d_move(oldent, newent); if (olddir != newdir) uncache_dir(newdir); } return out.h.error; } ---------------------------------------------------------------------- Comment By: Henry N. (henryn) Date: 2008-11-06 22:17 Message: Yes, SVN r1127 corrected only the swapped atime and mtime, and not the cache problem on rename. You have a patch? Nice. Please let's see. ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2008-10-29 04:04 Message: Unfortunately, SVN revision r1127 do not fix this bug. When I remove my "d_move" patch, problem was recurrence. ---------------------------------------------------------------------- Comment By: Henry N. (henryn) Date: 2008-10-28 00:24 Message: With these script the "touch -d 1970-1-1 b" after the "mv" fails all times: rm -f a b touch a mv a b touch -d 1970-1-1 b ls --full-time b Same problem with overwrite on move: touch a b mv a b touch -d 1970-1-1 b ls --full-time b On cofs the touch after "mv" fails: touch: setting times of `b': No such file or directory -rw-r--r-- 1 root root 0 2008-10-27 23:29:50.000000000 +0000 b On cobd or with 'nocache' it works: -rw-r--r-- 1 root root 0 1970-01-01 00:00:00.000000000 +0000 b ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2008-10-23 03:18 Message: Close inode cache possible loss performance, it is a little bug in rename only. I fix this bug yesterday. and I will use the my new kernel some days, if that has other problem, I can fix it. ---------------------------------------------------------------------- Comment By: Henry N. (henryn) Date: 2008-10-22 13:41 Message: The inode cache is default enabled for 1 Second. You can disable it by adding "nocache" to mount options, for example: mount -o nocache -t cofs 0 /mnt/windows More cosf options, see cofs.txt in your coLinux installation or here: http://colinux.svn.sourceforge.net/viewvc/colinux/branches/devel/doc/cofs ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2008-10-21 13:48 Message: I trace the code, it see like rename bug, the filename change, but inode not. ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2008-10-18 09:24 Message: Excuse me, I think this bug same as #2152550 ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=622063&aid=2176188&group_id=98788 |