hash-based notify and dnotify?

Volker Lendecke Volker.Lendecke at SerNet.DE
Tue Jan 30 21:06:28 GMT 2007


Right now I'm looking at the file change notify support in
Samba3. I am at a point where I've got the Samba4
implementation working so that it almost survives the same
set of RAW-NOTIFY subtests that Samba4 does.

Samba4 only contains an inotify backend to call out to Unix,
Samba3 contains 3 ones: dnotify, FAM and a hash-based system
that regularly scans directories.

If you google for dnotify you will find that it is first not
the cleanest interface, it can miss some updates and worst
it does not tell us what has changed. It only tells us
*something* has changed.

The directory scanning interface is broken in similar ways,
the worst thing is: It is terribly inefficient.

FAM seems mostly unused these days but has a moderately
usable interface. You can select on a socket and ask the
subsystem for what has changed.

Tridge has implemented a scheme where the Samba-internal
events are handled with correct Windows semantics, at least
to the level where we right now have seen it in the tests.
The backends I described help us in seeing Unix-triggered
events that were caused outside of Samba.

I would like to ask if we can drop the dnotify and
hash-based interfaces and keep inotify as our main
interface. This would leave the Linux 2.4 based and other
unix systems without inotify behind for the unix-triggered
events. The workaround for these would be to compile the SGI
fam, which from what I've seen implements both dnotify and a
hash-based system similar to what Samba3 has done for ages.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.samba.org/archive/samba-technical/attachments/20070130/517b3f64/attachment.bin

More information about the samba-technical mailing list