Re: cephfs/ceph_ll_client.h: client_dentry_callback_t: how to trigger one

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 2021-10-01 at 14:43 +0200, Milan Kováčik wrote:
> Thank you Jeff!
> 
> št 30. 9. 2021 o 18:30 Jeff Layton <jlayton@xxxxxxxxxx> napísal(a):
> > On Thu, 2021-09-30 at 14:08 +0200, Milan Kováčik wrote:
> > > Hi guys,
> > > 
> > > what are the conditions for a client_dentry_callback_t to be
> > triggered?
> > > Also, what's the use case for this callback?
> > > 
> > 
> > It gets triggered when a dentry should be invalidated, typically
> > when
> > trimming caps or leased dentries.
> > 
> 
> 
> so for the callback to fire I have to hold a reference (a pointer) to
> a directory entry, whose caps or lease state have been changed by
> another Cephfs client?

That should probably do it.

>  Also is the struct ceph_client_callback_args callbacks semantics
> documented somewhere else besides the cephfs/ceph_ll_ceph.h file?
> 

Not really.

You can look over src/client/* to get an idea of how the actual
implementation works, but all of this stuff is really fluid and poorly
documented.

We could really use some good docs here if you're up for writing them,
after you figure things out.

> Thanks!
> milan
> > 
> > > FWIW I've not been able to trigger my client_dentry_callback_t
> > callback. On
> > > the other hand, my client_ino_callback_t callback gets triggered
> > every now
> > > and then in my test setup (a single node, VM 16.2.5 deployment
> > > with
> > a linux
> > > kernel client mount competing with a custom user-space client
> > mount).
> > > 
> > > Thanks a lot!
> > > milan
> > > _______________________________________________
> > > Dev mailing list -- dev@xxxxxxx
> > > To unsubscribe send an email to dev-leave@xxxxxxx
> > 

-- 
Jeff Layton <jlayton@xxxxxxxxxx>

_______________________________________________
Dev mailing list -- dev@xxxxxxx
To unsubscribe send an email to dev-leave@xxxxxxx




[Index of Archives]     [CEPH Users]     [Ceph Devel]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux