This patch series adds support to xfs for the new kernel mount API as described in the LWN article at https://lwn.net/Articles/780267/. In the article there's a lengthy description of the reasons for adopting the API and problems expected to be resolved by using it. The series has been applied to the repository located at git://git.kernel.org/pub/scm/fs/xfs/xfs-linux.git, and built, and the xfstests suite run against it. I didn't see any failures that look like they are related to mounting. Changes from the initial posting of the series: - changed .name to uppercase in fs_parameter_description to ensure consistent error log messages between the vfs parser and the xfs parameter parser. - clearify comment above xfs_parse_param() about when possibly allocated mp->m_logname or mp->m_rtname are freed. - factor out xfs_remount_rw() and xfs_remount_ro() from xfs_remount(). - changed xfs_mount_alloc() to not set super block in xfs_mount so it can be re-used when switching to the mount-api. - fixed don't check for NULL when calling kfree() in xfs_fc_free(). - refactored xfs_parseargs() in an attempt to highlight the code that actually changes in converting to use the new mount api. - dropped xfs-mount-api-rename-xfs_fill_super.patch, it didn't seem necessary. - move comment about remount difficulties above xfs_reconfigure() and increase line length to try and make the comment managable. - add patch vfs-Create-fs_context-aware-mount_bdev-replacement.patch that adds the vfs_get_block_super() needed by the series. The patch "vfs: Create fs_context-aware mount_bdev() replacement" is currently included in linux-next so there will be conflicts if this series is merged in the next merge window so please be aware of it. --- David Howells (1): vfs: Create fs_context-aware mount_bdev() replacement Ian Kent (14): xfs: mount-api - add fs parameter description xfs: mount-api - refactor suffix_kstrtoint() xfs: mount-api - refactor xfs_parseags() xfs: mount-api - make xfs_parse_param() take context .parse_param() args xfs: mount-api - move xfs_parseargs() validation to a helper xfs: mount-api - refactor xfs_fs_fill_super() xfs: mount-api - add xfs_get_tree() xfs: mount-api - add xfs_remount_rw() helper xfs: mount-api - add xfs_remount_ro() helper xfs: mount api - add xfs_reconfigure() xfs: mount-api - add xfs_fc_free() xfs: mount-api - dont set sb in xfs_mount_alloc() xfs: mount-api - switch to new mount-api xfs: mount-api - remove legacy mount functions fs/fs_context.c | 2 fs/super.c | 111 +++++ fs/xfs/xfs_super.c | 949 ++++++++++++++++++++++++-------------------- include/linux/fs_context.h | 9 4 files changed, 631 insertions(+), 440 deletions(-) -- Ian