aufs3 GIT release
o bugfix - get a removed dentry from an inode, reported by Andrew Vagin In aufs, there are several places getting a dentry from an inode. It can happen that all names are unlinked and only the inode is still alive. In this case, d_find_alias() doesn't return any dentry and aufs cannot find the dentry, so it simply returns an error. It is ok in most cases. but in some cases, aufs should search a dentry even if it was unlinked. For these cases, replace them by d_find_any_alias() which can return a removed dentry. This problem was found by Andrew Vagin using inotify00 test program in http://git.criu.org/?p=criu.git;a=blob;f=test/zdtm/live/static/inotify00.c;h=587408cda5bd3bb4e3da47a657ee1258635a1ccd;hb=HEAD J. R. Okajima - aufs3-linux.git aufs: bugfix, get a removed dentry from an inode aufs: debug, more lockdep_off() - aufs3-standalone.git ditto - aufs-util.git none -- Slashdot TV. Video for Nerds. Stuff that matters. http://tv.slashdot.org/
Detecting access by the HSM daemon
au_cmoo() does: pid = au_fhsm_pid(fhsm); if (pid (current-pid == pid || current-real_parent-pid == pid)) goto out; But the kernel's 'pid' is really a thread ID. If the HSM daemon is multithreaded, only one of its threads will get be recognised. I think that the HSM daemon should be recognised based on 'tgid' (task group ID, POSIX process ID). Ben. -- Ben Hutchings Experience is directly proportional to the value of equipment destroyed. - Carolyn Scheppner signature.asc Description: This is a digitally signed message part -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk
Re: Detecting access by the HSM daemon
Hello Ben, Ben Hutchings: But the kernel's 'pid' is really a thread ID. If the HSM daemon is multithreaded, only one of its threads will get be recognised. Maybe you are right. But currently aufhsmd is not multi-threaded and it won't in the future. It is important to fork() by its design which depends upon SIGCHLD. So I'd keep this 'pid' now. Of course, if aufhsmd becomes multi-threaded in the future, we should use tid or tgid. Thanks for pointing out. J. R. Okajima -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk