Dazuko on FreeBSD (no more open-file-list)

John Ogness <[email protected]>
Newsgroups gmane.linux.dazuko.devel
Message-ID <[email protected]>
Hi,

I realized a couple days ago that the FreeBSD extension from Dazuko 
implements a work-around that was designed for Linux. The open-file 
lists have been causing lots of problems. Normally this list is not 
needed, but under Linux the necessary structures to do 
file_descriptor->file_name lookups are hidden from kernel modules. This 
is why Dazuko must track the file_names/file_descriptors as they are opened.

However, FreeBSD does not hide it's code from modules. So under FreeBSD, 
closing file_descriptors should be no problem to look up the 
corresponding file_names.

Well, I implemented this under FreeBSD 4 and it works beautifully 
(available in CVS). Right now it is only being used for the sys_close 
call. I will include this support to dup and dup2 shortly. Then I can 
copy it over to FreeBSD 5.

This is great news because it means no more memory leaks or 
unreliability with ON_CLOSE events (under FreeBSD). Linux could also do 
this if people were willing to compile Dazuko into the kernel (and not 
as a kernel module). I may make this an option since ON_CLOSE is a very 
important event and the memory leaks it causes are unbearable.

This implementation also means that there is no way to track writes 
(because I will eliminate the open-file-list). This means that 
ON_CLOSE_MODIFIED events will never be generated. I personally do not 
have a problem with this because the ON_CLOSE_MODIFIED events generate 
an enormous overhead for something that a userspace application can do 
itself easily (and much more effeciently).

John Ogness

-- 
Dazuko Maintainer
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.