Re: Where's the create() pointer?

From: Trond Myklebust
Date: Sat Jan 19 2008 - 15:06:21 EST



On Sat, 2008-01-19 at 12:02 -0700, Justin Banks wrote:
> Trond Myklebust wrote
> >
> > On Sat, 2008-01-19 at 08:07 -0700, Justin Banks wrote:
> > > It's probably been this way for a long time, and I'm just noticing, but
> > > I can't seem to find the create() (among others) pointer for NFS filesystems.
> > >
> > > Specifically, If I look at sb->s_root->d_inode->i_op there's no create
> > > there. How do I find it? I'm guessing that the ability to share mount
> > > structures between multiple NFS mounts resulted in some kind of fake
> > > superblock, but I just can't figure out where to find the functions.
> >
> > Why would you want to do this in the first place?
>
> I'm just looking at trapping new creates on NFS, and so I need to find
> the pointer.

What is your purpose in trapping creates on the client? Is this for
accounting purposes? If so, why wouldn't inotify, or even a systemtap
script suffice?

Anyhow, the simplest way to find the pointer is to grep for nfs_create
in /proc/kallsyms.

Trond


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/