Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1683614

Re: [RFC][PATCH 00/14] VFS: Make all filesystems implement ->show_options()

From Theodore Ts'o <tytso@mit.edu>
Newsgroups linux.kernel
Subject Re: [RFC][PATCH 00/14] VFS: Make all filesystems implement ->show_options()
Date 2017-07-08 17:40 +0200
Message-ID <u0ZZT-3WD-7@gated-at.bofh.it> (permalink)
References <tZVEZ-ke-9@gated-at.bofh.it> <tZUpz-83i-3@gated-at.bofh.it> <u0DPJ-63n-13@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Fri, Jul 07, 2017 at 04:58:56PM +0100, David Howells wrote:
> Yeah.  We actually currently get this *wrong* in both ext4 and btrfs - and
> probably other disk filesystems too.  During ext4 remount and btrfs remount,
> the options are parsed directly into the live xxx_fs_info struct, but if
> there's a parse error mid-way, we only partially apply the options and have no
> idea where it went wrong and what the current state is.
> 
> What I'm looking it is breaking it down into a number of steps:
> 
>  (1) Parse the options one at a time into a context struct.
> 
>  (2) Once we've got all the options, validate the options we've been given
>      with respect to themselves.
> 
>  (3) Under lock:
> 
>      (a) Check the coherency of the options we've been given with respect to
>      	 the superblock (if new mount) or the current live state (if remount).
> 
>      (b) Apply the options.  This is not permitted to fail.
> 
> This gets more complicated under ext4 as you've got an extra option string
> stored on disk that you also have to apply and combine with the options
> presented to the mount interface.

Remounts aren't really performance critical, so it might be simpler
just to do one pass which just checks the options, applying the
options to a scratch xx_fs_info struct, and if it seeded, redo the
parse from scratch, this time applying to the live xxx_fs_info struct.

      	   	    	      	       	  - Ted
					  

Back to linux.kernel | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

[RFC][PATCH 00/14] VFS: Make all filesystems implement  ->show_options() David Howells <dhowells@redhat.com> - 2017-07-05 17:30 +0200
  [PATCH 11/14] isofs: Implement show_options David Howells <dhowells@redhat.com> - 2017-07-05 17:30 +0200
    [PATCH] isofs: Fix isofs_show_options() David Howells <dhowells@redhat.com> - 2017-07-11 17:30 +0200
  [PATCH 04/14] pstore: Implement show_options David Howells <dhowells@redhat.com> - 2017-07-05 17:30 +0200
    Re: [PATCH 04/14] pstore: Implement show_options Kees Cook <keescook@chromium.org> - 2017-07-05 19:20 +0200
      Re: [PATCH 04/14] pstore: Implement show_options David Howells <dhowells@redhat.com> - 2017-07-07 18:10 +0200
  [PATCH 07/14] spufs: Implement show_options David Howells <dhowells@redhat.com> - 2017-07-05 17:30 +0200
  [PATCH 10/14] afs: Implement show_options David Howells <dhowells@redhat.com> - 2017-07-05 17:30 +0200
  [PATCH 08/14] befs: Implement show_options David Howells <dhowells@redhat.com> - 2017-07-05 17:30 +0200
  [PATCH 06/14] bpf: Implement show_options David Howells <dhowells@redhat.com> - 2017-07-05 17:30 +0200
    Re: [PATCH 06/14] bpf: Implement show_options Daniel Borkmann <daniel@iogearbox.net> - 2017-07-06 10:10 +0200
  Re: [RFC][PATCH 00/14] VFS: Make all filesystems implement ->show_options() ebiederm@xmission.com (Eric W. Biederman) - 2017-07-05 18:50 +0200
    Re: [RFC][PATCH 00/14] VFS: Make all filesystems implement ->show_options() David Howells <dhowells@redhat.com> - 2017-07-07 18:00 +0200
      Re: [RFC][PATCH 00/14] VFS: Make all filesystems implement  ->show_options() Theodore Ts'o <tytso@mit.edu> - 2017-07-08 17:40 +0200

csiph-web