Re: [PATCH v6 00/27] nfs: Mount API conversion
From: Schumaker, Anna <hidden>
Date: 2019-12-10 21:16:51
Also in:
linux-fsdevel, linux-nfs, lkml
Hi Scott, On Tue, 2019-12-10 at 07:30 -0500, Scott Mayhew wrote:
Hi Anna, Trond, Here's a set of patches that converts NFS to use the mount API. Note that there are a lot of preliminary patches, some from David and some from Al. The final patch (the one that does the actual conversion) from the David's initial posting has been split into 5 separate patches, and the entire set has been rebased on top of v5.5-rc1.
Thanks for the updated patches! Everything looks okay to me, but I've only tested with the legacy mount command. I'm curious if you've tested it using the new system? Thanks, Anna
Changes since v5:
- fixed possible derefence of error pointer in nfs4_validate_fspath()
reported by Dan Carpenter
- rebased on top of v5.5-rc1
Changes since v4:
- further split the original "NFS: Add fs_context support" patch (new
patch is about 25% smaller than the v4 patch)
- fixed NFSv4 referral mounts (broken in the original patch)
- fixed leak of nfs_fattr when fs_context is freed
Changes since v3:
- changed license and copyright text in fs/nfs/fs_context.c
Changes since v2:
- fixed the conversion of the nconnect= option
- added '#if IS_ENABLED(CONFIG_NFS_V4)' around nfs4_parse_monolithic()
to avoid unused-function warning when compiling with v4 disabled
Chagnes since v1:
- split up patch 23 into 4 separate patches
-Scott
Al Viro (15):
saner calling conventions for nfs_fs_mount_common()
nfs: stash server into struct nfs_mount_info
nfs: lift setting mount_info from nfs4_remote{,_referral}_mount
nfs: fold nfs4_remote_fs_type and nfs4_remote_referral_fs_type
nfs: don't bother setting/restoring export_path around
do_nfs_root_mount()
nfs4: fold nfs_do_root_mount/nfs_follow_remote_path
nfs: lift setting mount_info from nfs_xdev_mount()
nfs: stash nfs_subversion reference into nfs_mount_info
nfs: don't bother passing nfs_subversion to ->try_mount() and
nfs_fs_mount_common()
nfs: merge xdev and remote file_system_type
nfs: unexport nfs_fs_mount_common()
nfs: don't pass nfs_subversion to ->create_server()
nfs: get rid of mount_info ->fill_super()
nfs_clone_sb_security(): simplify the check for server bogosity
nfs: get rid of ->set_security()
David Howells (8):
NFS: Move mount parameterisation bits into their own file
NFS: Constify mount argument match tables
NFS: Rename struct nfs_parsed_mount_data to struct nfs_fs_context
NFS: Split nfs_parse_mount_options()
NFS: Deindent nfs_fs_context_parse_option()
NFS: Add a small buffer in nfs_fs_context to avoid string dup
NFS: Do some tidying of the parsing code
NFS: Add fs_context support.
Scott Mayhew (4):
NFS: rename nfs_fs_context pointer arg in a few functions
NFS: Convert mount option parsing to use functionality from
fs_parser.h
NFS: Additional refactoring for fs_context conversion
NFS: Attach supplementary error information to fs_context.
fs/nfs/Makefile | 2 +-
fs/nfs/client.c | 80 +-
fs/nfs/fs_context.c | 1424 +++++++++++++++++++++++++
fs/nfs/fscache.c | 2 +-
fs/nfs/getroot.c | 73 +-
fs/nfs/internal.h | 132 +--
fs/nfs/namespace.c | 146 ++-
fs/nfs/nfs3_fs.h | 2 +-
fs/nfs/nfs3client.c | 6 +-
fs/nfs/nfs3proc.c | 2 +-
fs/nfs/nfs4_fs.h | 9 +-
fs/nfs/nfs4client.c | 99 +-
fs/nfs/nfs4file.c | 1 +
fs/nfs/nfs4namespace.c | 292 +++---
fs/nfs/nfs4proc.c | 2 +-
fs/nfs/nfs4super.c | 257 ++---
fs/nfs/proc.c | 2 +-
fs/nfs/super.c | 2217 +++++----------------------------------
include/linux/nfs_xdr.h | 9 +-
19 files changed, 2287 insertions(+), 2470 deletions(-)
create mode 100644 fs/nfs/fs_context.c