Sorry to revive an old thread, but after a month of debugging, it
turns out that it is indeed an aufs issue.

During the month ive tried old kernels, new kernels, using various
tweaks to gamin, glib versions and nautilus builds, all to no avail.
Testing aufs versions over the last week, i concluded that the last
working aufs version for me is 20080922. Based on this information, it
turns out the single change to aufs that causes this problem to occurr
is:

- bugfix: under heavy load the dead inode might be re-used because of
  the race condition between S_DEAD flag and some lock-free oprations.
  force 'must-new' inode in some cases.
  + add a parameter 'must_new' for au_new_inode().
  + set S_DEAD flag in aufs_unlink() and aufs_rmdir().
  + set S_DEAD flag in aufs_rename().
  + test the S_DEAD flag in reval_inode().

and a simple, and most probably incorrect workaround is to disable the
check for "must_new" in au_inode_new (inode.c, line 349).

Incidentally, the error I get when I boot up:

aufs au_new_inode:362:mv[5446]: Un-notified UDBA or repeatedly renamed
dir, b90, squashfs, rules.d, hi23, i303.

is also gone.

After disabling the must_new check on the latest version (20081103), I
have gone 3 days without seeing this bug (normally, it would take a
mere 20-30 minutes before inotify fails), and I dont think its a
coincidence. I dont know how this discovery might help but if you need
any extra information, im more than happy to post it here.

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/

Reply via email to