Thread (8 messages) flat view 8 messages, 4 authors, 2008-09-23

Re: [RFC PATCH] Filesystem Journal Notifications

From: Andreas Dilger <hidden>
Date: 2008-09-19 20:34:03
Also in: linux-fsdevel

On Sep 16, 2008  16:05 -0700, Abhijit Paithankar wrote:
quoted
Is there a reason NOT to use the journal commit callback mechanism that
I posted?  This would only require registering a single callback for
each transaction for the inotify, but has the benefit of being completely
generic and can be used for other commit notifiers in the future.
In the current patch if two applications want to be notified on the journal
commit event they could register for IN_JOURNAL_COMMIT on the same inode,
which could be the root inode of the file system.

There is no limit on the number of applications that could register on the
root inode for journal commit notifications. The only limitation is that
they all have to register on the same inode for that partition.

Any number of applications can register for the journal event as long as they
register on the same inode.
That assumes agreement between the applications that are using this
interface.  It isn't at all desirable that applications have to know
the "mountpoint" of the filesystem in order to use inotify, and in
some cases (e.g. bind mount in a new namespace) there isn't even access
to the root inode.
The journal commit callback mechanism could be viable way to notify
journal commits. However it is not clear to me how an application would
register the callback.
The application registers for the callback via the inotify interface,
which in turn needs to have an interface to the filesystem to use the
fs-specific transaction commit callback.
It is not clear to me how using journal_callback_set API would change
that if we use inotify to register callbacks.
The journal_callback_set() API doesn't need to change at all (though in
fact Joel Becker of OCFS2 is implementing a more generic API that can be
used for other kinds of commit callbacks.  He will hopefully post it to
this list soon.

Cheers, Andreas
--
Andreas Dilger
Sr. Staff Engineer, Lustre Group
Sun Microsystems of Canada, Inc.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help