Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 23 Aug 2013 13:06:52 -0700
From:      Yuri <yuri@rawbw.com>
To:        John Baldwin <jhb@freebsd.org>
Cc:        Mateusz Guzik <mjguzik@gmail.com>, John-Mark Gurney <jmg@funkthat.com>, freebsd-current@freebsd.org, Roman Divacky <rdivacky@freebsd.org>, current@freebsd.org
Subject:   Re: How to best overload the fileops ?
Message-ID:  <5217C0DC.8050107@rawbw.com>
In-Reply-To: <201308231302.32800.jhb@freebsd.org>
References:  <521508F4.6030502@rawbw.com> <20130822001022.GA18115@dft-labs.eu> <52155B8D.1020807@rawbw.com> <201308231302.32800.jhb@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5217C0DC.8050107>