public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "Aneesh Kumar K. V" <aneesh.kumar@linux.vnet.ibm.com>
To: Miklos Szeredi <miklos@szeredi.hu>
Cc: miklos@szeredi.hu, hch@infradead.org, viro@zeniv.linux.org.uk,
	adilger@sun.com, corbet@lwn.net, neilb@suse.de,
	npiggin@kernel.dk, hooanon05@yahoo.co.jp, bfields@fieldses.org,
	miklos@szeredi.hu, linux-fsdevel@vger.kernel.org,
	sfrench@us.ibm.com, philippe.deniel@CEA.FR,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH -V19 00/15] Generic name to handle and open by handle syscalls
Date: Mon, 13 Sep 2010 00:52:27 +0530	[thread overview]
Message-ID: <m3r5gyepho.fsf@linux.vnet.ibm.com> (raw)
In-Reply-To: <E1OsyA1-0007Ct-KS@pomaz-ex.szeredi.hu>

On Tue, 07 Sep 2010 15:24:29 +0200, Miklos Szeredi <miklos@szeredi.hu> wrote:
> On Tue, 07 Sep 2010, Aneesh Kumar K. V wrote:
> > On Tue, 07 Sep 2010 13:36:03 +0200, Miklos Szeredi <miklos@szeredi.hu> wrote:
> > > On Tue, 07 Sep 2010, Aneesh Kumar K. V wrote:
> > > > Any update on this. Are you ok with syscall approach which is limitted to
> > > > CAP_DAC_READ_SEARCH  ?
> > > 
> > > My gut reaction is: "not another bunch of xattr syscalls!".  It
> > > doesn't feel right, this interface is too specialized to warrant a
> > > full set of filesystem syscalls.
> > 
> > 
> > Are you ok with rest of syscalls other than the handle based xattr one ?
> 
> No, not really.  Only xattrs stand out from the rest as the "API that
> shouldn't be" and adding more to that pile makes me feel especially
> bad.
> 
> But xattrs aside, I still don't think we need another interface for
> file handles that duplicates the existing filesystem APIs.
> 

As per your suggestion i started looking at handlefs details and below
is my take on the approach.

handlefs would be an internal kernel mount like pipefs and would have
inode object mapping to the returned file descriptor of
open_by_handle_at syscall for symlinks. For regular files we can do what
we already does and for symlinks we will create inodes in handlefs and
their inode operation will in turn result in call out of inode operations
of the actual symlinks. Based on the above

a) We still need open_by_handle_at syscall
b) We still need handle based link syscall, because we need to support
   creating hardlinks based on handle, and the existing linkat syscall
   takes the oldpath name.
c) We still need handle based readlink syscall, because the existing
   readlinkat syscall takes pathname.
d) we can drop stat, chown and xattr syscall because they are introduced
   specially for symlinks as we don't allow open on symlinks.
e) It would be nice to have handle based stat syscall to avoid two
   syscall overhead for fetching file attributes when implementing a
   file server, where fetching file attribute is a common operation. 

With the above from the current patch series we can drop chown and
xattr syscalls. Would it be ok if we get the series with the those two
syscall patches dropped upstream as i work on supporting symlinks with
handlefs approach ?

-aneesh


  reply	other threads:[~2010-09-12 19:22 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-27 11:02 [PATCH -V19 00/15] Generic name to handle and open by handle syscalls Aneesh Kumar K.V
2010-08-27 11:02 ` [PATCH -V19 01/15] exportfs: Return the minimum required handle size Aneesh Kumar K.V
2010-08-27 11:02 ` [PATCH -V19 02/15] vfs: Add name to file handle conversion support Aneesh Kumar K.V
2010-08-27 11:02 ` [PATCH -V19 03/15] vfs: Add open by file handle support Aneesh Kumar K.V
2010-08-27 11:02 ` [PATCH -V19 04/15] vfs: Add handle based readlink syscall Aneesh Kumar K.V
2010-08-27 11:02 ` [PATCH -V19 05/15] vfs: Add handle based stat syscall Aneesh Kumar K.V
2010-08-27 11:02 ` [PATCH -V19 06/15] vfs: Add handle based link syscall Aneesh Kumar K.V
2010-08-27 11:02 ` [PATCH -V19 07/15] vfs: Add handle based chown syscall Aneesh Kumar K.V
2010-08-27 11:02 ` [PATCH -V19 08/15] vfs: Add handle based xattr syscalls Aneesh Kumar K.V
2010-08-27 11:02 ` [PATCH -V19 09/15] vfs: Add file access and modification time update via handle syscall Aneesh Kumar K.V
2010-08-27 11:02 ` [PATCH -V19 10/15] x86: Add new syscalls for x86_32 Aneesh Kumar K.V
2010-08-27 11:02 ` [PATCH -V19 11/15] x86: Add new syscalls for x86_64 Aneesh Kumar K.V
2010-08-27 11:02 ` [PATCH -V19 12/15] unistd.h: Add new syscalls numbers to asm-generic Aneesh Kumar K.V
2010-08-27 11:03 ` [PATCH -V19 13/15] vfs: Export file system uuid via /proc/<pid>/mountinfo Aneesh Kumar K.V
2010-08-27 11:03 ` [PATCH -V19 14/15] ext3: Copy fs UUID to superblock Aneesh Kumar K.V
2010-08-27 11:03 ` [PATCH -V19 15/15] ext4: " Aneesh Kumar K.V
2010-09-07 10:21 ` [PATCH -V19 00/15] Generic name to handle and open by handle syscalls Aneesh Kumar K. V
2010-09-07 11:36   ` Miklos Szeredi
2010-09-07 12:59     ` Aneesh Kumar K. V
2010-09-07 13:24       ` Miklos Szeredi
2010-09-12 19:22         ` Aneesh Kumar K. V [this message]
2010-09-13  6:01           ` Miklos Szeredi
2010-09-13  6:59             ` Neil Brown
2010-09-13  7:59               ` Miklos Szeredi
2010-09-17 17:40             ` Aneesh Kumar K. V

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=m3r5gyepho.fsf@linux.vnet.ibm.com \
    --to=aneesh.kumar@linux.vnet.ibm.com \
    --cc=adilger@sun.com \
    --cc=bfields@fieldses.org \
    --cc=corbet@lwn.net \
    --cc=hch@infradead.org \
    --cc=hooanon05@yahoo.co.jp \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=miklos@szeredi.hu \
    --cc=neilb@suse.de \
    --cc=npiggin@kernel.dk \
    --cc=philippe.deniel@CEA.FR \
    --cc=sfrench@us.ibm.com \
    --cc=viro@zeniv.linux.org.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox