aufs3 GIT release

2014-09-07 Thread sfjro

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

2014-09-07 Thread Ben Hutchings
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

2014-09-07 Thread sfjro

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