All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeff Layton <jlayton@redhat.com>
To: Karel Zak <kzak@redhat.com>, David Howells <dhowells@redhat.com>
Cc: viro@zeniv.linux.org.uk, linux-fsdevel@vger.kernel.org,
	linux-nfs@vger.kernel.org, linux-kernel@vger.kernel.org,
	mszeredi@redhat.com
Subject: Re: [PATCH 4/9] Implement fsopen() to prepare for a mount
Date: Tue, 09 May 2017 14:40:29 -0400	[thread overview]
Message-ID: <1494355229.2659.15.camel@redhat.com> (raw)
In-Reply-To: <20170504133414.ytfdumdeuhh5txkw@ws.net.home>

On Thu, 2017-05-04 at 15:34 +0200, Karel Zak wrote:
> On Thu, May 04, 2017 at 02:06:51PM +0100, David Howells wrote:
> > Karel Zak <kzak@redhat.com> wrote:
> > > The very basic mount(2) problem is that you have to parse
> > > /proc/self/mountinfo to get information about the mounted filesystem.
> > > It seems that your read() is also one way communication.
> > > 
> > > What we really need is to have a way how to specify *what* you want to
> > > read. The error message is not enough, I want to know the finally used
> > > mount options, mount ID, etc. It would be nice to have something like
> > > 
> > > 
> > >    fsmount(mfd, AT_FDCWD, "/mnt", 0);
> > > 
> > >    write(mfd, "o");
> > >    read(mfd, ....);     // read mount options
> > > 
> > >    write(mdf, "i");
> > >    read(mfd, ....);     // read mount ID
> > > 
> > > 
> > > but it seems ugly. Maybe introduce another function like 
> > > 
> > >     fsinfo(mdf, "o", buf, bufsz)
> > > 

Not sure that it's any prettier, but you could use an ioctl to switch
between different read requests:

ioctl(mfd, FSOPEN_READ_OPTIONS);
read(mfd, ....);

ioctl(mfd, FSOPEN_READ_MOUNT_ID);
read(mfd, ....);

> > > to get mount options (etc.) and to avoid separate write & read.
> > 
> > What is it you're trying to do?  Just read back the state of the new mount?
> 
>  ...read back the state of the new mount, because for example mount
>  options can be modified by FS driver. It would be also nice to have
>  API to get state of arbitrary mount without parsing mountinfo (the
>  file is huge on some systems).
> 


-- 
Jeff Layton <jlayton@redhat.com>

  reply	other threads:[~2017-05-09 18:40 UTC|newest]

Thread overview: 71+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-03 16:04 [RFC][PATCH 0/9] VFS: Introduce mount context David Howells
2017-05-03 16:04 ` [PATCH 1/9] Provide a function to create a NUL-terminated string from unterminated data David Howells
2017-05-03 16:55   ` Jeff Layton
2017-05-03 19:26   ` Rasmus Villemoes
2017-05-03 20:13     ` David Howells
2017-05-03 16:04 ` [PATCH 2/9] Clean up whitespace in fs/namespace.c David Howells
2017-05-03 16:04 ` [PATCH 3/9] VFS: Introduce a mount context David Howells
2017-05-03 18:13   ` Jeff Layton
2017-05-03 18:26     ` Joe Perches
2017-05-03 18:37       ` David Howells
2017-05-03 18:43         ` Joe Perches
2017-05-03 20:11           ` David Howells
2017-05-03 20:38       ` Matthew Wilcox
2017-05-03 21:17         ` David Howells
2017-05-03 21:36         ` [Cocci] " Joe Perches
2017-05-03 21:36           ` Joe Perches
2017-05-03 21:36           ` Joe Perches
2017-05-04  6:28           ` [Cocci] " Julia Lawall
2017-05-04  6:28             ` Julia Lawall
2017-05-04  6:28             ` Julia Lawall
2017-05-04  9:27       ` David Howells
2017-05-04 14:34         ` Joe Perches
2017-05-03 21:43   ` Rasmus Villemoes
2017-05-04 10:22     ` David Howells
2017-05-08 15:05   ` Miklos Szeredi
2017-05-08 22:57     ` David Howells
2017-05-09  8:03       ` Miklos Szeredi
2017-05-09  9:32         ` David Howells
2017-05-09 11:04           ` Miklos Szeredi
2017-05-09  9:41         ` David Howells
2017-05-09 12:02           ` Miklos Szeredi
2017-05-09 18:51             ` Jeff Layton
2017-05-10  7:24               ` Miklos Szeredi
2017-05-10  8:05                 ` David Howells
2017-05-10 13:20                   ` Jeff Layton
2017-05-10 13:30                     ` Miklos Szeredi
2017-05-10 13:33                       ` Miklos Szeredi
2017-05-10 13:48                       ` Jeff Layton
2017-05-12  8:15                         ` Miklos Szeredi
2017-05-10 13:31                     ` David Howells
2017-05-10 13:37                       ` Jeff Layton
2017-05-09  9:56         ` David Howells
2017-05-09 12:38           ` Miklos Szeredi
2017-05-10 12:41         ` Karel Zak
2017-05-03 16:05 ` [PATCH 4/9] Implement fsopen() to prepare for a mount David Howells
2017-05-03 18:37   ` Jeff Layton
2017-05-03 18:41     ` David Howells
2017-05-03 20:44   ` Rasmus Villemoes
2017-05-04 12:55     ` David Howells
2017-05-04 12:58     ` David Howells
2017-05-04 10:40   ` Karel Zak
2017-05-04 13:06     ` David Howells
2017-05-04 13:34       ` Karel Zak
2017-05-09 18:40         ` Jeff Layton [this message]
2017-05-08 15:10   ` Miklos Szeredi
2017-05-08 23:09     ` David Howells
2017-05-03 16:05 ` [PATCH 5/9] Implement fsmount() to effect a pre-configured mount David Howells
2017-05-03 16:05 ` [PATCH 6/9] Sample program for driving fsopen/fsmount David Howells
2017-05-03 16:05 ` [PATCH 7/9] procfs: Move proc_fill_super() to fs/proc/root.c David Howells
2017-05-03 16:05 ` [PATCH 8/9] proc: Support the mount context in procfs David Howells
2017-05-03 16:05 ` [PATCH 9/9] NFS: Support the mount context and fsopen() David Howells
2017-05-03 16:44 ` [RFC][PATCH 0/9] VFS: Introduce mount context Jeff Layton
2017-05-03 16:50   ` David Howells
2017-05-03 17:27     ` Jeff Layton
2017-05-05 14:35 ` Miklos Szeredi
2017-05-05 15:47   ` David Howells
2017-05-08  8:25     ` Miklos Szeredi
2017-05-08  8:35     ` David Howells
2017-05-08  8:43       ` Miklos Szeredi
2017-05-08 17:03 ` Djalal Harouni
2017-05-08 17:03   ` Djalal Harouni

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=1494355229.2659.15.camel@redhat.com \
    --to=jlayton@redhat.com \
    --cc=dhowells@redhat.com \
    --cc=kzak@redhat.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-nfs@vger.kernel.org \
    --cc=mszeredi@redhat.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.