From patchwork Fri Oct 25 17:40:20 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Christoph Hellwig X-Patchwork-Id: 11212781 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 52E441747 for ; Fri, 25 Oct 2019 17:40:45 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 2E4D5222BD for ; Fri, 25 Oct 2019 17:40:45 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b="stI8RLCP" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2505948AbfJYRko (ORCPT ); Fri, 25 Oct 2019 13:40:44 -0400 Received: from bombadil.infradead.org ([198.137.202.133]:39478 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731004AbfJYRko (ORCPT ); Fri, 25 Oct 2019 13:40:44 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender :Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From :Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=COczx5M6HWIP7G+XYO3c4djA/XtWT4xvieHEiWUKBMU=; b=stI8RLCPImPytSqEgA+Zf8sY6W wNnV586IUJKqEPLYoU4axstFFO9Jv4idVzfQl/k2sdXt1dgi1hqRrHHrWHnlV7ZnI1qAcV3JdVMdM hStKPk0P/61tiaoElW2b2SeT+ksiX/0RNKKqmQx19z01v2gSNDEPIIujzwgimB1DjAnvXt1vEzW8x Yse+Dmx7aG97SzEEK/272DA3eF/1gSezomin27LidXUz8tjoZy6k1i25+jxCikcYIszFHphSLXmAV 7T7ulE1PwDwtdrgmClgp6Q2PyA8a8xIGOSOPcthe1KLXJh2oulvoAL4eqHtaSKctD86SYX3rMQkbL Lqvf7GnA==; Received: from [88.128.80.25] (helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.92.3 #3 (Red Hat Linux)) id 1iO3Zq-0005UA-N3; Fri, 25 Oct 2019 17:40:44 +0000 From: Christoph Hellwig To: linux-xfs@vger.kernel.org Cc: Ian Kent Subject: [PATCH 1/7] xfs: cleanup stat blksize reporting Date: Fri, 25 Oct 2019 19:40:20 +0200 Message-Id: <20191025174026.31878-2-hch@lst.de> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191025174026.31878-1-hch@lst.de> References: <20191025174026.31878-1-hch@lst.de> MIME-Version: 1.0 X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html Sender: linux-xfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-xfs@vger.kernel.org Move xfs_preferred_iosize to xfs_iops.c, unobsfucate it and also handle the realtime special case in the helper. Signed-off-by: Christoph Hellwig Reviewed-by: Eric Sandeen --- fs/xfs/xfs_iops.c | 47 ++++++++++++++++++++++++++++++++++++---------- fs/xfs/xfs_mount.h | 24 ----------------------- 2 files changed, 37 insertions(+), 34 deletions(-) diff --git a/fs/xfs/xfs_iops.c b/fs/xfs/xfs_iops.c index 404f2dd58698..b6dbfd8eb6a1 100644 --- a/fs/xfs/xfs_iops.c +++ b/fs/xfs/xfs_iops.c @@ -484,6 +484,42 @@ xfs_vn_get_link_inline( return link; } +static uint32_t +xfs_stat_blksize( + struct xfs_inode *ip) +{ + struct xfs_mount *mp = ip->i_mount; + + /* + * If the file blocks are being allocated from a realtime volume, then + * always return the realtime extent size. + */ + if (XFS_IS_REALTIME_INODE(ip)) + return xfs_get_extsz_hint(ip) << mp->m_sb.sb_blocklog; + + /* + * Allow large block sizes to be reported to userspace programs if the + * "largeio" mount option is used. + * + * If compatibility mode is specified, simply return the basic unit of + * caching so that we don't get inefficient read/modify/write I/O from + * user apps. Otherwise.... + * + * If the underlying volume is a stripe, then return the stripe width in + * bytes as the recommended I/O size. It is not a stripe and we've set a + * default buffered I/O size, return that, otherwise return the compat + * default. + */ + if (!(mp->m_flags & XFS_MOUNT_COMPAT_IOSIZE)) { + if (mp->m_swidth) + return mp->m_swidth << mp->m_sb.sb_blocklog; + if (mp->m_flags & XFS_MOUNT_DFLT_IOSIZE) + return 1U << max(mp->m_readio_log, mp->m_writeio_log); + } + + return PAGE_SIZE; +} + STATIC int xfs_vn_getattr( const struct path *path, @@ -543,16 +579,7 @@ xfs_vn_getattr( stat->rdev = inode->i_rdev; break; default: - if (XFS_IS_REALTIME_INODE(ip)) { - /* - * If the file blocks are being allocated from a - * realtime volume, then return the inode's realtime - * extent size or the realtime volume's extent size. - */ - stat->blksize = - xfs_get_extsz_hint(ip) << mp->m_sb.sb_blocklog; - } else - stat->blksize = xfs_preferred_iosize(mp); + stat->blksize = xfs_stat_blksize(ip); stat->rdev = 0; break; } diff --git a/fs/xfs/xfs_mount.h b/fs/xfs/xfs_mount.h index fdb60e09a9c5..f69e370db341 100644 --- a/fs/xfs/xfs_mount.h +++ b/fs/xfs/xfs_mount.h @@ -267,30 +267,6 @@ typedef struct xfs_mount { #define XFS_WSYNC_READIO_LOG 15 /* 32k */ #define XFS_WSYNC_WRITEIO_LOG 14 /* 16k */ -/* - * Allow large block sizes to be reported to userspace programs if the - * "largeio" mount option is used. - * - * If compatibility mode is specified, simply return the basic unit of caching - * so that we don't get inefficient read/modify/write I/O from user apps. - * Otherwise.... - * - * If the underlying volume is a stripe, then return the stripe width in bytes - * as the recommended I/O size. It is not a stripe and we've set a default - * buffered I/O size, return that, otherwise return the compat default. - */ -static inline unsigned long -xfs_preferred_iosize(xfs_mount_t *mp) -{ - if (mp->m_flags & XFS_MOUNT_COMPAT_IOSIZE) - return PAGE_SIZE; - return (mp->m_swidth ? - (mp->m_swidth << mp->m_sb.sb_blocklog) : - ((mp->m_flags & XFS_MOUNT_DFLT_IOSIZE) ? - (1 << (int)max(mp->m_readio_log, mp->m_writeio_log)) : - PAGE_SIZE)); -} - #define XFS_LAST_UNMOUNT_WAS_CLEAN(mp) \ ((mp)->m_flags & XFS_MOUNT_WAS_CLEAN) #define XFS_FORCED_SHUTDOWN(mp) ((mp)->m_flags & XFS_MOUNT_FS_SHUTDOWN) From patchwork Fri Oct 25 17:40:21 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Christoph Hellwig X-Patchwork-Id: 11212783 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 535D114ED for ; Fri, 25 Oct 2019 17:41:07 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 23DDC222BE for ; Fri, 25 Oct 2019 17:41:07 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b="gv65pVj+" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2505949AbfJYRlG (ORCPT ); Fri, 25 Oct 2019 13:41:06 -0400 Received: from bombadil.infradead.org ([198.137.202.133]:39504 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731004AbfJYRlG (ORCPT ); Fri, 25 Oct 2019 13:41:06 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender :Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From :Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=Mhj2bV0zW3AusSVvLz5o8gfEE1bFdjs9SxdHL9Cynys=; b=gv65pVj+5lJyoFwBWNah44ZIHu a4NvFqqLOkiZj7sNfev4I7hjN8jgLDiRkImOhZEN7aLAHbbEJOftHWYxJSM/kUw9Hr8HwadTJK648 bXkaEnoj+xJFwn2V6iQYZeUmoWUmoZWUkcHwPtLSSY/D1YnhxtfbJyv+WBrptOJ0JtOGxFe2jx9j2 8AHNL2TED0gg7rMJF+EvyOdZPn6lo8DRn7mYsrgQBnFxkv0s3YGpW0ArkJLp0yr5j/Mpk5SQYD+1m qOnv8qZ/WUPhn6XBB/5XIHK094UXNiYmlWH6qolrBEHVHbtMdD9EO9MnGe1NP3Y6CZq8QEjcnVqxM en/qgpVQ==; Received: from [88.128.80.25] (helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.92.3 #3 (Red Hat Linux)) id 1iO3aC-0005Wj-1W; Fri, 25 Oct 2019 17:41:06 +0000 From: Christoph Hellwig To: linux-xfs@vger.kernel.org Cc: Ian Kent Subject: [PATCH 2/7] xfs: remove the unused m_readio_blocks field from struct xfs_mount Date: Fri, 25 Oct 2019 19:40:21 +0200 Message-Id: <20191025174026.31878-3-hch@lst.de> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191025174026.31878-1-hch@lst.de> References: <20191025174026.31878-1-hch@lst.de> MIME-Version: 1.0 X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html Sender: linux-xfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-xfs@vger.kernel.org Signed-off-by: Christoph Hellwig Reviewed-by: Eric Sandeen --- fs/xfs/xfs_mount.c | 1 - fs/xfs/xfs_mount.h | 1 - 2 files changed, 2 deletions(-) diff --git a/fs/xfs/xfs_mount.c b/fs/xfs/xfs_mount.c index ba5b6f3b2b88..18af97512aec 100644 --- a/fs/xfs/xfs_mount.c +++ b/fs/xfs/xfs_mount.c @@ -455,7 +455,6 @@ xfs_set_rw_sizes(xfs_mount_t *mp) } else { mp->m_readio_log = readio_log; } - mp->m_readio_blocks = 1 << (mp->m_readio_log - sbp->sb_blocklog); if (sbp->sb_blocklog > writeio_log) { mp->m_writeio_log = sbp->sb_blocklog; } else { diff --git a/fs/xfs/xfs_mount.h b/fs/xfs/xfs_mount.h index f69e370db341..ecde5b3828c8 100644 --- a/fs/xfs/xfs_mount.h +++ b/fs/xfs/xfs_mount.h @@ -99,7 +99,6 @@ typedef struct xfs_mount { spinlock_t m_agirotor_lock;/* .. and lock protecting it */ xfs_agnumber_t m_maxagi; /* highest inode alloc group */ uint m_readio_log; /* min read size log bytes */ - uint m_readio_blocks; /* min read size blocks */ uint m_writeio_log; /* min write size log bytes */ uint m_writeio_blocks; /* min write size blocks */ struct xfs_da_geometry *m_dir_geo; /* directory block geometry */ From patchwork Fri Oct 25 17:40:22 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Christoph Hellwig X-Patchwork-Id: 11212785 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 5DFE214ED for ; Fri, 25 Oct 2019 17:41:16 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 395D1222BD for ; Fri, 25 Oct 2019 17:41:16 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b="gphz0dgN" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2505951AbfJYRlP (ORCPT ); Fri, 25 Oct 2019 13:41:15 -0400 Received: from bombadil.infradead.org ([198.137.202.133]:39538 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731004AbfJYRlP (ORCPT ); Fri, 25 Oct 2019 13:41:15 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender :Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From :Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=BmdgWnXhg54x12ACGaLzapvo9cop4qOVKtNUAxo0cBo=; b=gphz0dgNF/+i6JeeqoJX/y1FPl b9WDXrD3Mf8o8TQsn08kNLwcO7D5iCQmi5T1uhNe5ZxMJnb2DegDs0xmoreU7yj0t3SoQAOAj3z6Z 43uPJ+IDHwsJ1cF3mAHjiVIZ3gWbCybRsz164Y5Wq/NJp2/Zii4c6xPjDHTZDbWl1mJeyFAUWBi1M I+wa69joumSG89lb2uvbEKSrCCUlvcy2rbF+PUwbVoSf+rC7R5xYorcXL7yyoqhNzaEpuADBg848S rZgDNaWJWmvUUi7JQ/HwQ9oNCIDg/XlqHWNKGtkOYQuvGyJStpmgnhlfLC8EQHHTm6bgmh2m7NF3L IB5glk9A==; Received: from [88.128.80.25] (helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.92.3 #3 (Red Hat Linux)) id 1iO3aM-0005Yg-0j; Fri, 25 Oct 2019 17:41:15 +0000 From: Christoph Hellwig To: linux-xfs@vger.kernel.org Cc: Ian Kent Subject: [PATCH 3/7] xfs: remove the m_readio_log field from struct xfs_mount Date: Fri, 25 Oct 2019 19:40:22 +0200 Message-Id: <20191025174026.31878-4-hch@lst.de> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191025174026.31878-1-hch@lst.de> References: <20191025174026.31878-1-hch@lst.de> MIME-Version: 1.0 X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html Sender: linux-xfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-xfs@vger.kernel.org The m_readio_log is only used for reporting the blksize (aka preferred I/O size) in struct stat. For all cases but a file system that does not use stripe alignment, but which has the wsync and largeio mount option set the value is the same as the write I/O size. Remove the field and report a smaller preferred I/O size for that corner case, which actually is the right thing to do for that case (except for the fact that is probably is entirely unused). Signed-off-by: Christoph Hellwig Reviewed-by: Eric Sandeen --- fs/xfs/xfs_iops.c | 2 +- fs/xfs/xfs_mount.c | 17 ++++------------- fs/xfs/xfs_mount.h | 15 ++++----------- fs/xfs/xfs_super.c | 1 - 4 files changed, 9 insertions(+), 26 deletions(-) diff --git a/fs/xfs/xfs_iops.c b/fs/xfs/xfs_iops.c index b6dbfd8eb6a1..271fcbe04d48 100644 --- a/fs/xfs/xfs_iops.c +++ b/fs/xfs/xfs_iops.c @@ -514,7 +514,7 @@ xfs_stat_blksize( if (mp->m_swidth) return mp->m_swidth << mp->m_sb.sb_blocklog; if (mp->m_flags & XFS_MOUNT_DFLT_IOSIZE) - return 1U << max(mp->m_readio_log, mp->m_writeio_log); + return 1U << mp->m_writeio_log; } return PAGE_SIZE; diff --git a/fs/xfs/xfs_mount.c b/fs/xfs/xfs_mount.c index 18af97512aec..9800401a7d6f 100644 --- a/fs/xfs/xfs_mount.c +++ b/fs/xfs/xfs_mount.c @@ -435,26 +435,17 @@ STATIC void xfs_set_rw_sizes(xfs_mount_t *mp) { xfs_sb_t *sbp = &(mp->m_sb); - int readio_log, writeio_log; + int writeio_log; if (!(mp->m_flags & XFS_MOUNT_DFLT_IOSIZE)) { - if (mp->m_flags & XFS_MOUNT_WSYNC) { - readio_log = XFS_WSYNC_READIO_LOG; - writeio_log = XFS_WSYNC_WRITEIO_LOG; - } else { - readio_log = XFS_READIO_LOG_LARGE; + if (mp->m_flags & XFS_MOUNT_WSYNC) + writeio_log = XFS_WRITEIO_LOG_WSYNC; + else writeio_log = XFS_WRITEIO_LOG_LARGE; - } } else { - readio_log = mp->m_readio_log; writeio_log = mp->m_writeio_log; } - if (sbp->sb_blocklog > readio_log) { - mp->m_readio_log = sbp->sb_blocklog; - } else { - mp->m_readio_log = readio_log; - } if (sbp->sb_blocklog > writeio_log) { mp->m_writeio_log = sbp->sb_blocklog; } else { diff --git a/fs/xfs/xfs_mount.h b/fs/xfs/xfs_mount.h index ecde5b3828c8..fb3a36a048cc 100644 --- a/fs/xfs/xfs_mount.h +++ b/fs/xfs/xfs_mount.h @@ -98,7 +98,6 @@ typedef struct xfs_mount { xfs_agnumber_t m_agirotor; /* last ag dir inode alloced */ spinlock_t m_agirotor_lock;/* .. and lock protecting it */ xfs_agnumber_t m_maxagi; /* highest inode alloc group */ - uint m_readio_log; /* min read size log bytes */ uint m_writeio_log; /* min write size log bytes */ uint m_writeio_blocks; /* min write size blocks */ struct xfs_da_geometry *m_dir_geo; /* directory block geometry */ @@ -247,10 +246,11 @@ typedef struct xfs_mount { /* - * Default minimum read and write sizes. + * Default minimum write size. The smaller sync value is better for + * NFSv2 wsync file systems. */ -#define XFS_READIO_LOG_LARGE 16 -#define XFS_WRITEIO_LOG_LARGE 16 +#define XFS_WRITEIO_LOG_WSYNC 14 /* 16k */ +#define XFS_WRITEIO_LOG_LARGE 16 /* 64k */ /* * Max and min values for mount-option defined I/O @@ -259,13 +259,6 @@ typedef struct xfs_mount { #define XFS_MAX_IO_LOG 30 /* 1G */ #define XFS_MIN_IO_LOG PAGE_SHIFT -/* - * Synchronous read and write sizes. This should be - * better for NFSv2 wsync filesystems. - */ -#define XFS_WSYNC_READIO_LOG 15 /* 32k */ -#define XFS_WSYNC_WRITEIO_LOG 14 /* 16k */ - #define XFS_LAST_UNMOUNT_WAS_CLEAN(mp) \ ((mp)->m_flags & XFS_MOUNT_WAS_CLEAN) #define XFS_FORCED_SHUTDOWN(mp) ((mp)->m_flags & XFS_MOUNT_FS_SHUTDOWN) diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c index 0a8cf6b87a21..4ededdbed5a4 100644 --- a/fs/xfs/xfs_super.c +++ b/fs/xfs/xfs_super.c @@ -418,7 +418,6 @@ xfs_parseargs( } mp->m_flags |= XFS_MOUNT_DFLT_IOSIZE; - mp->m_readio_log = iosizelog; mp->m_writeio_log = iosizelog; } From patchwork Fri Oct 25 17:40:23 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Christoph Hellwig X-Patchwork-Id: 11212787 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id B1EAE1747 for ; Fri, 25 Oct 2019 17:41:25 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 8B78F21E6F for ; Fri, 25 Oct 2019 17:41:25 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b="Oxo47SZy" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2505950AbfJYRlZ (ORCPT ); Fri, 25 Oct 2019 13:41:25 -0400 Received: from bombadil.infradead.org ([198.137.202.133]:39560 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731004AbfJYRlZ (ORCPT ); Fri, 25 Oct 2019 13:41:25 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender :Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From :Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=pHUfu1I4xocvM2yPnOMMGJUlA+ZQEBxPq34rRSc/Kz0=; b=Oxo47SZyRqlMq6iQ6Q+1VJifEd TKOyzH4Lyra48vUyay7m8Uu4TkoSigIKJrIuYCDoa0xTz/cZ/OBA8ADGcoypSHfNZadBTHMjrbRzB jcwxe0ZuVa60ZunYPcL137mCfjOpAAMNq3APJsfpotPX4D1XpNdE1TqXJnYbFINVqo8lBGjG10Y/O zSbRKZMiy3G/RW4tKUldMFzN+WukR0gJfbFmN8Cmip+/dPXtSnSyHkKzukV6ZFwIkAef9W6v4B9X7 /FHiUOgWdbfkfmLGxvVL0OBKpPcs8WzvOUOzbrSVbWrHVYW7/GNI+svCVsbcdDAnas0GRUFF3mh42 xO8pk1TA==; Received: from [88.128.80.25] (helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.92.3 #3 (Red Hat Linux)) id 1iO3aV-0005Zn-H1; Fri, 25 Oct 2019 17:41:24 +0000 From: Christoph Hellwig To: linux-xfs@vger.kernel.org Cc: Ian Kent Subject: [PATCH 4/7] xfs: remove the dsunit and dswidth variables in xfs_parseargs Date: Fri, 25 Oct 2019 19:40:23 +0200 Message-Id: <20191025174026.31878-5-hch@lst.de> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191025174026.31878-1-hch@lst.de> References: <20191025174026.31878-1-hch@lst.de> MIME-Version: 1.0 X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html Sender: linux-xfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-xfs@vger.kernel.org There is no real need for the local variables here - either they are applied to the mount structure, or if the noalign mount option is set the mount will fail entirely if either is set. Removing them helps cleaning up the mount API conversion. Signed-off-by: Christoph Hellwig Reviewed-by: Eric Sandeen --- fs/xfs/xfs_super.c | 27 ++++++++------------------- 1 file changed, 8 insertions(+), 19 deletions(-) diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c index 4ededdbed5a4..ee2dde897fb7 100644 --- a/fs/xfs/xfs_super.c +++ b/fs/xfs/xfs_super.c @@ -160,8 +160,6 @@ xfs_parseargs( const struct super_block *sb = mp->m_super; char *p; substring_t args[MAX_OPT_ARGS]; - int dsunit = 0; - int dswidth = 0; int iosize = 0; uint8_t iosizelog = 0; @@ -254,11 +252,11 @@ xfs_parseargs( mp->m_flags |= XFS_MOUNT_SWALLOC; break; case Opt_sunit: - if (match_int(args, &dsunit)) + if (match_int(args, &mp->m_dalign)) return -EINVAL; break; case Opt_swidth: - if (match_int(args, &dswidth)) + if (match_int(args, &mp->m_swidth)) return -EINVAL; break; case Opt_inode32: @@ -352,7 +350,8 @@ xfs_parseargs( return -EINVAL; } - if ((mp->m_flags & XFS_MOUNT_NOALIGN) && (dsunit || dswidth)) { + if ((mp->m_flags & XFS_MOUNT_NOALIGN) && + (mp->m_dalign || mp->m_swidth)) { xfs_warn(mp, "sunit and swidth options incompatible with the noalign option"); return -EINVAL; @@ -365,30 +364,20 @@ xfs_parseargs( } #endif - if ((dsunit && !dswidth) || (!dsunit && dswidth)) { + if ((mp->m_dalign && !mp->m_swidth) || + (!mp->m_dalign && mp->m_swidth)) { xfs_warn(mp, "sunit and swidth must be specified together"); return -EINVAL; } - if (dsunit && (dswidth % dsunit != 0)) { + if (mp->m_dalign && (mp->m_swidth % mp->m_dalign != 0)) { xfs_warn(mp, "stripe width (%d) must be a multiple of the stripe unit (%d)", - dswidth, dsunit); + mp->m_swidth, mp->m_dalign); return -EINVAL; } done: - if (dsunit && !(mp->m_flags & XFS_MOUNT_NOALIGN)) { - /* - * At this point the superblock has not been read - * in, therefore we do not know the block size. - * Before the mount call ends we will convert - * these to FSBs. - */ - mp->m_dalign = dsunit; - mp->m_swidth = dswidth; - } - if (mp->m_logbufs != -1 && mp->m_logbufs != 0 && (mp->m_logbufs < XLOG_MIN_ICLOGS || From patchwork Fri Oct 25 17:40:24 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Christoph Hellwig X-Patchwork-Id: 11212789 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id E87901747 for ; Fri, 25 Oct 2019 17:41:33 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id B908A2070B for ; Fri, 25 Oct 2019 17:41:33 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b="mcf0K9ty" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2505953AbfJYRld (ORCPT ); Fri, 25 Oct 2019 13:41:33 -0400 Received: from bombadil.infradead.org ([198.137.202.133]:39572 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731004AbfJYRld (ORCPT ); Fri, 25 Oct 2019 13:41:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender :Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From :Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=1UYeoP4C1vj1AK5xd0sNJMeuZ3C5kqVxD6HFuOebm70=; b=mcf0K9tyU7Zr3zlJMS6QmDSw4M 5tYT2sNWFCflGyYZbyfVqN7lafKicrMVKu1vZcVjzCZklgtGZ8RZJgDK3gO1V1Id+7ueUy7fxSycK E2zTWJG423dEx4bdrMCHdh8us3VZQLt7I9br4BgcPNIKisEEUz9s/2X5+k6K0Pz8K3XvoavAqRr+f xFt/y/5SJ26hqK/VRMSYGMceyEJgPtCk3EegUUfUpFza4y6c0I7vPmLiFqiHNeUPcz0mb2ppAPKFp LgFBL35jtCPa6GBel4H+aUw+0vC5YWzYvvvy7XBGHcNM4IOl4uOxhwYUKAIQizoNrDlcwGsVPmpzx xWkSuW+w==; Received: from [88.128.80.25] (helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.92.3 #3 (Red Hat Linux)) id 1iO3ae-0005aw-9L; Fri, 25 Oct 2019 17:41:32 +0000 From: Christoph Hellwig To: linux-xfs@vger.kernel.org Cc: Ian Kent Subject: [PATCH 5/7] xfs: remove the iosizelog variable in xfs_parseargs Date: Fri, 25 Oct 2019 19:40:24 +0200 Message-Id: <20191025174026.31878-6-hch@lst.de> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191025174026.31878-1-hch@lst.de> References: <20191025174026.31878-1-hch@lst.de> MIME-Version: 1.0 X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html Sender: linux-xfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-xfs@vger.kernel.org There is no real need for a local variables here - either the I/O size is valid and gets applied to the mount structure, or it is invalid and the mount will fail entirely. Signed-off-by: Christoph Hellwig --- fs/xfs/xfs_super.c | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c index ee2dde897fb7..1467f4bebc41 100644 --- a/fs/xfs/xfs_super.c +++ b/fs/xfs/xfs_super.c @@ -161,7 +161,6 @@ xfs_parseargs( char *p; substring_t args[MAX_OPT_ARGS]; int iosize = 0; - uint8_t iosizelog = 0; /* * set up the mount name first so all the errors will refer to the @@ -229,7 +228,8 @@ xfs_parseargs( case Opt_biosize: if (suffix_kstrtoint(args, 10, &iosize)) return -EINVAL; - iosizelog = ffs(iosize) - 1; + mp->m_writeio_log = ffs(iosize) - 1; + mp->m_flags |= XFS_MOUNT_DFLT_IOSIZE; break; case Opt_grpid: case Opt_bsdgroups: @@ -397,17 +397,14 @@ xfs_parseargs( return -EINVAL; } - if (iosizelog) { - if (iosizelog > XFS_MAX_IO_LOG || - iosizelog < XFS_MIN_IO_LOG) { + if (mp->m_flags & XFS_MOUNT_DFLT_IOSIZE) { + if (mp->m_writeio_log > XFS_MAX_IO_LOG || + mp->m_writeio_log < XFS_MIN_IO_LOG) { xfs_warn(mp, "invalid log iosize: %d [not %d-%d]", - iosizelog, XFS_MIN_IO_LOG, - XFS_MAX_IO_LOG); + mp->m_writeio_log, + XFS_MIN_IO_LOG, XFS_MAX_IO_LOG); return -EINVAL; } - - mp->m_flags |= XFS_MOUNT_DFLT_IOSIZE; - mp->m_writeio_log = iosizelog; } return 0; From patchwork Fri Oct 25 17:40:25 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Christoph Hellwig X-Patchwork-Id: 11212791 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id DDF8B1747 for ; Fri, 25 Oct 2019 17:41:37 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id B78032070B for ; Fri, 25 Oct 2019 17:41:37 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b="INiib9oI" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2505956AbfJYRlh (ORCPT ); Fri, 25 Oct 2019 13:41:37 -0400 Received: from bombadil.infradead.org ([198.137.202.133]:39584 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2505952AbfJYRlh (ORCPT ); Fri, 25 Oct 2019 13:41:37 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender :Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From :Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=VCF9hpBzd7i42LXFuFU46mmpbU0fm1rU5nr46SqSNcI=; b=INiib9oIEgO0IjnxBVPM2q9lne 4SL+/Qj9Jc7NHCKGKd8DdeipQmgWzwJ/ZHKGf+cunps5NpbBhQ2ACJ8xjG8z5cHaNt7TutTY0Suc5 Y37sTw8dEB2hPaPHgFhuNdS35GlP+CMkbwntMoguw4drl5GBd7sxxND1kYoy1d+sN7mDFSraONoPz 5ugjkTIcRRtBoIn3wBp4Xhi4W6REIL25wTbk7sEPhzDz0YubGx/oQklpTrOCJHiR9SFCyd2ScawqO Ii7xgmuuvxL3+p+MLpx7hz3aWMTG/JOSN0ltHAQYMDYF5e6QVnoKhLyxsriWfnbrkByRv4EjaZNyn Nokc+koA==; Received: from [88.128.80.25] (helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.92.3 #3 (Red Hat Linux)) id 1iO3ah-0005bT-Tk; Fri, 25 Oct 2019 17:41:36 +0000 From: Christoph Hellwig To: linux-xfs@vger.kernel.org Cc: Ian Kent Subject: [PATCH 6/7] xfs: clean up setting m_readio_* / m_writeio_* Date: Fri, 25 Oct 2019 19:40:25 +0200 Message-Id: <20191025174026.31878-7-hch@lst.de> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191025174026.31878-1-hch@lst.de> References: <20191025174026.31878-1-hch@lst.de> MIME-Version: 1.0 X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html Sender: linux-xfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-xfs@vger.kernel.org Fill in the default _log values in xfs_parseargs similar to other defaults, and open code the updates based on the on-disk superblock in xfs_mountfs now that they are completely trivial. Signed-off-by: Christoph Hellwig --- fs/xfs/xfs_mount.c | 36 +++++------------------------------- fs/xfs/xfs_super.c | 5 +++++ 2 files changed, 10 insertions(+), 31 deletions(-) diff --git a/fs/xfs/xfs_mount.c b/fs/xfs/xfs_mount.c index 9800401a7d6f..bae53fdd5d51 100644 --- a/fs/xfs/xfs_mount.c +++ b/fs/xfs/xfs_mount.c @@ -425,35 +425,6 @@ xfs_update_alignment(xfs_mount_t *mp) return 0; } -/* - * Set the default minimum read and write sizes unless - * already specified in a mount option. - * We use smaller I/O sizes when the file system - * is being used for NFS service (wsync mount option). - */ -STATIC void -xfs_set_rw_sizes(xfs_mount_t *mp) -{ - xfs_sb_t *sbp = &(mp->m_sb); - int writeio_log; - - if (!(mp->m_flags & XFS_MOUNT_DFLT_IOSIZE)) { - if (mp->m_flags & XFS_MOUNT_WSYNC) - writeio_log = XFS_WRITEIO_LOG_WSYNC; - else - writeio_log = XFS_WRITEIO_LOG_LARGE; - } else { - writeio_log = mp->m_writeio_log; - } - - if (sbp->sb_blocklog > writeio_log) { - mp->m_writeio_log = sbp->sb_blocklog; - } else { - mp->m_writeio_log = writeio_log; - } - mp->m_writeio_blocks = 1 << (mp->m_writeio_log - sbp->sb_blocklog); -} - /* * precalculate the low space thresholds for dynamic speculative preallocation. */ @@ -718,9 +689,12 @@ xfs_mountfs( goto out_remove_errortag; /* - * Set the minimum read and write sizes + * Update the preferred write size based on the information from the + * on-disk superblock. */ - xfs_set_rw_sizes(mp); + mp->m_writeio_log = + max_t(uint32_t, mp->m_sb.sb_blocklog, mp->m_writeio_log); + mp->m_writeio_blocks = 1 << (mp->m_writeio_log - mp->m_sb.sb_blocklog); /* set the low space thresholds for dynamic preallocation */ xfs_set_low_space_thresholds(mp); diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c index 1467f4bebc41..83dbfcc5a02d 100644 --- a/fs/xfs/xfs_super.c +++ b/fs/xfs/xfs_super.c @@ -405,6 +405,11 @@ xfs_parseargs( XFS_MIN_IO_LOG, XFS_MAX_IO_LOG); return -EINVAL; } + } else { + if (mp->m_flags & XFS_MOUNT_WSYNC) + mp->m_writeio_log = XFS_WRITEIO_LOG_WSYNC; + else + mp->m_writeio_log = XFS_WRITEIO_LOG_LARGE; } return 0; From patchwork Fri Oct 25 17:40:26 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Christoph Hellwig X-Patchwork-Id: 11212793 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 057BF1747 for ; Fri, 25 Oct 2019 17:41:41 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id D38BA2070B for ; Fri, 25 Oct 2019 17:41:40 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b="TqG81/ci" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2505957AbfJYRlk (ORCPT ); Fri, 25 Oct 2019 13:41:40 -0400 Received: from bombadil.infradead.org ([198.137.202.133]:39596 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2505952AbfJYRlk (ORCPT ); Fri, 25 Oct 2019 13:41:40 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender :Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From :Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=Sf48E0ZilmJkJ/aUHFEQWI8VkToVrgdIBVrdlyozehI=; b=TqG81/ciDwUiysTDcOhnDGnNzk Vcgudo/N6wOnca+AWN3uLpx08iiv24n/04p/40Ln58E1uyZGLpL6AaveXyIjbxVdAYzhEjPgYo4D5 7Ry6nBtKD1raSjUfl8/VpVJjpjRkC/WqdjwO14Dv68dsemtsOdud2NEx/iKXKqhuR7BtMf3eEchoY emmS6b6pj8d8ryvmIUAoBTsGJT+cFQghrvDbL0M2EeETSrqKSeJWl5vBEf+SAMGT0LNWWpeZXPSHt 9J2gs4mjjcy2Y3y2BCPLbOEu60Wl4M2yMvtu2bT0IbT7/XYCPFq8IT45SVDQ81vGds4JruHtzikzK eMouQ0gw==; Received: from [88.128.80.25] (helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.92.3 #3 (Red Hat Linux)) id 1iO3al-0005bs-Ia; Fri, 25 Oct 2019 17:41:40 +0000 From: Christoph Hellwig To: linux-xfs@vger.kernel.org Cc: Ian Kent Subject: [PATCH 7/7] xfs: reverse the polarity of XFS_MOUNT_COMPAT_IOSIZE Date: Fri, 25 Oct 2019 19:40:26 +0200 Message-Id: <20191025174026.31878-8-hch@lst.de> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191025174026.31878-1-hch@lst.de> References: <20191025174026.31878-1-hch@lst.de> MIME-Version: 1.0 X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html Sender: linux-xfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-xfs@vger.kernel.org Replace XFS_MOUNT_COMPAT_IOSIZE with an inverted XFS_MOUNT_LARGEIO flag that makes the usage more clear. Signed-off-by: Christoph Hellwig Reviewed-by: Eric Sandeen --- fs/xfs/xfs_iops.c | 2 +- fs/xfs/xfs_mount.h | 2 +- fs/xfs/xfs_super.c | 12 +++--------- 3 files changed, 5 insertions(+), 11 deletions(-) diff --git a/fs/xfs/xfs_iops.c b/fs/xfs/xfs_iops.c index 271fcbe04d48..98e30a300c64 100644 --- a/fs/xfs/xfs_iops.c +++ b/fs/xfs/xfs_iops.c @@ -510,7 +510,7 @@ xfs_stat_blksize( * default buffered I/O size, return that, otherwise return the compat * default. */ - if (!(mp->m_flags & XFS_MOUNT_COMPAT_IOSIZE)) { + if (mp->m_flags & XFS_MOUNT_LARGEIO) { if (mp->m_swidth) return mp->m_swidth << mp->m_sb.sb_blocklog; if (mp->m_flags & XFS_MOUNT_DFLT_IOSIZE) diff --git a/fs/xfs/xfs_mount.h b/fs/xfs/xfs_mount.h index fb3a36a048cc..dde45d5664f4 100644 --- a/fs/xfs/xfs_mount.h +++ b/fs/xfs/xfs_mount.h @@ -236,7 +236,7 @@ typedef struct xfs_mount { * allocation */ #define XFS_MOUNT_RDONLY (1ULL << 20) /* read-only fs */ #define XFS_MOUNT_DIRSYNC (1ULL << 21) /* synchronous directory ops */ -#define XFS_MOUNT_COMPAT_IOSIZE (1ULL << 22) /* don't report large preferred +#define XFS_MOUNT_LARGEIO (1ULL << 22) /* report large preferred * I/O size in stat() */ #define XFS_MOUNT_FILESTREAMS (1ULL << 24) /* enable the filestreams allocator */ diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c index 83dbfcc5a02d..52f4629278b0 100644 --- a/fs/xfs/xfs_super.c +++ b/fs/xfs/xfs_super.c @@ -181,12 +181,6 @@ xfs_parseargs( if (sb->s_flags & SB_SYNCHRONOUS) mp->m_flags |= XFS_MOUNT_WSYNC; - /* - * Set some default flags that could be cleared by the mount option - * parsing. - */ - mp->m_flags |= XFS_MOUNT_COMPAT_IOSIZE; - /* * These can be overridden by the mount option parsing. */ @@ -275,10 +269,10 @@ xfs_parseargs( mp->m_flags &= ~XFS_MOUNT_IKEEP; break; case Opt_largeio: - mp->m_flags &= ~XFS_MOUNT_COMPAT_IOSIZE; + mp->m_flags |= XFS_MOUNT_LARGEIO; break; case Opt_nolargeio: - mp->m_flags |= XFS_MOUNT_COMPAT_IOSIZE; + mp->m_flags &= ~XFS_MOUNT_LARGEIO; break; case Opt_attr2: mp->m_flags |= XFS_MOUNT_ATTR2; @@ -438,12 +432,12 @@ xfs_showargs( { XFS_MOUNT_GRPID, ",grpid" }, { XFS_MOUNT_DISCARD, ",discard" }, { XFS_MOUNT_SMALL_INUMS, ",inode32" }, + { XFS_MOUNT_LARGEIO, ",largeio" }, { XFS_MOUNT_DAX, ",dax" }, { 0, NULL } }; static struct proc_xfs_info xfs_info_unset[] = { /* the few simple ones we can get from the mount struct */ - { XFS_MOUNT_COMPAT_IOSIZE, ",largeio" }, { XFS_MOUNT_SMALL_INUMS, ",inode64" }, { 0, NULL } };