Re: GlusterFS API to manipulate open file descriptor - glfs_fcntl?

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

 



On Tue, 2019-10-15 at 12:40 +0530, Amar Tumballi wrote:
> It would be great if you can point at the requirements, or new
> additions you are talking about.

Explained below..

> On Tue, Oct 15, 2019 at 12:26 PM Anoop C S <anoopcs@xxxxxxxxxxxxx>
> wrote:
> > Hi all,
> > 
> > This is to check and confirm whether we have an API(or an internal
> > implementation which can be exposed as API) to perform operations
> > on an
> > open file descriptor as a wrapper around existing fcntl() system
> > call.
> > We do have specific APIs for locks(glfs_posix_lock) and file
> > descriptor
> > duplication(glfs_dup) which are important among those operations
> > listed
> > as per man fcntl(2). 
> > At present we have a requirement(very recent) from Samba to set
> > file
> > descriptor flags through its VFS layer which would need a
> > corresponding
> > mechanism inside GlusterFS. Due to its absence, VFS module for
> > GlusterFS inside Samba will have to workaround with the hack of
> > creating fake local file descriptors outside GlusterFS.
> > 
> > Thoughts and suggestions are welcome.
> > 
> 
> If there is a need have a feature, it makes sense to extend fd_t
> structure and provide it inside. If my memory serve right, we didn't
> support fcntl() behavior in gluster as there was no fcntl() through
> fuse when we started.. 
> 
> Would be good to understand what is needed,

During open/create code path Samba tries to set blocking
flag(O_NONBLOCK on Linux) on open file descriptor through its VFS
layer. Comparing to fcntl() call command would be F_SETFL with required
flag(O_NONBLOCK). It is an expectation that backend file system(in this
case GlusterFS) executes this operation and return the result. VFS
module for GlusterFS inside Samba can extract required file descriptor
but would require a way to set the flag on it.

> and then start working on design discussions. (if it makes sense).
> 
> -Amar
>  
> > Anoop C S.
> > 
> > _______________________________________________
> > 
> > Community Meeting Calendar:
> > 
> > APAC Schedule -
> > Every 2nd and 4th Tuesday at 11:30 AM IST
> > Bridge: https://bluejeans.com/118564314
> > 
> > NA/EMEA Schedule -
> > Every 1st and 3rd Tuesday at 01:00 PM EDT
> > Bridge: https://bluejeans.com/118564314
> > 
> > Gluster-devel mailing list
> > Gluster-devel@xxxxxxxxxxx
> > https://lists.gluster.org/mailman/listinfo/gluster-devel
> > 

_______________________________________________

Community Meeting Calendar:

APAC Schedule -
Every 2nd and 4th Tuesday at 11:30 AM IST
Bridge: https://bluejeans.com/118564314

NA/EMEA Schedule -
Every 1st and 3rd Tuesday at 01:00 PM EDT
Bridge: https://bluejeans.com/118564314

Gluster-devel mailing list
Gluster-devel@xxxxxxxxxxx
https://lists.gluster.org/mailman/listinfo/gluster-devel




[Index of Archives]     [Gluster Users]     [Ceph Users]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux