How to best overload the fileops ?

Yuri yuri at rawbw.com
Fri Aug 23 20:06:54 UTC 2013


On 08/23/2013 10:02, John Baldwin wrote:
> There is something similar: see devfs_ops_f in sys/fs/devfs/devfs_vnops.c.

devfs_ops_f is a local static fileops object for devfs. I don't see how 
is this similar to our situation. devfs doesn't overload any other file 
system, they are a file system on their own.

>
> I don't think we need a generic framework for this, just expose the
> relevant fo_ methods for kqueue ops and use them in your epoll_ops.

In epoll case, fileops object as a whole should be exposed and used for 
fp->f_ops, except fo_close which is overloaded.

So would you think struct fileops* kqueue_fileops(); be ok then?

Yuri


More information about the freebsd-current mailing list