From: Chandan Babu R <chandan.babu@oracle.com>
To: djwong@kernel.org
Cc: chandan.babu@oracle.com, linux-xfs@vger.kernel.org,
amir73il@gmail.com, leah.rumancik@gmail.com
Subject: [PATCH 5.4 CANDIDATE 13/26] xfs: Replace function declaration by actual definition
Date: Mon, 24 Oct 2022 10:23:01 +0530 [thread overview]
Message-ID: <20221024045314.110453-14-chandan.babu@oracle.com> (raw)
In-Reply-To: <20221024045314.110453-1-chandan.babu@oracle.com>
From: Pavel Reichl <preichl@redhat.com>
commit 1cc95e6f0d7cfd61c9d3c5cdd4e7345b173f764f upstream.
Signed-off-by: Pavel Reichl <preichl@redhat.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
[darrick: fix typo in subject line]
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Chandan Babu R <chandan.babu@oracle.com>
---
fs/xfs/xfs_qm_syscalls.c | 140 ++++++++++++++++++---------------------
1 file changed, 66 insertions(+), 74 deletions(-)
diff --git a/fs/xfs/xfs_qm_syscalls.c b/fs/xfs/xfs_qm_syscalls.c
index e685b9ae90b9..1ea82764bf89 100644
--- a/fs/xfs/xfs_qm_syscalls.c
+++ b/fs/xfs/xfs_qm_syscalls.c
@@ -19,12 +19,72 @@
#include "xfs_qm.h"
#include "xfs_icache.h"
-STATIC int xfs_qm_log_quotaoff(struct xfs_mount *mp,
- struct xfs_qoff_logitem **qoffstartp,
- uint flags);
-STATIC int xfs_qm_log_quotaoff_end(struct xfs_mount *mp,
- struct xfs_qoff_logitem *startqoff,
- uint flags);
+STATIC int
+xfs_qm_log_quotaoff(
+ struct xfs_mount *mp,
+ struct xfs_qoff_logitem **qoffstartp,
+ uint flags)
+{
+ struct xfs_trans *tp;
+ int error;
+ struct xfs_qoff_logitem *qoffi;
+
+ *qoffstartp = NULL;
+
+ error = xfs_trans_alloc(mp, &M_RES(mp)->tr_qm_quotaoff, 0, 0, 0, &tp);
+ if (error)
+ goto out;
+
+ qoffi = xfs_trans_get_qoff_item(tp, NULL, flags & XFS_ALL_QUOTA_ACCT);
+ xfs_trans_log_quotaoff_item(tp, qoffi);
+
+ spin_lock(&mp->m_sb_lock);
+ mp->m_sb.sb_qflags = (mp->m_qflags & ~(flags)) & XFS_MOUNT_QUOTA_ALL;
+ spin_unlock(&mp->m_sb_lock);
+
+ xfs_log_sb(tp);
+
+ /*
+ * We have to make sure that the transaction is secure on disk before we
+ * return and actually stop quota accounting. So, make it synchronous.
+ * We don't care about quotoff's performance.
+ */
+ xfs_trans_set_sync(tp);
+ error = xfs_trans_commit(tp);
+ if (error)
+ goto out;
+
+ *qoffstartp = qoffi;
+out:
+ return error;
+}
+
+STATIC int
+xfs_qm_log_quotaoff_end(
+ struct xfs_mount *mp,
+ struct xfs_qoff_logitem *startqoff,
+ uint flags)
+{
+ struct xfs_trans *tp;
+ int error;
+ struct xfs_qoff_logitem *qoffi;
+
+ error = xfs_trans_alloc(mp, &M_RES(mp)->tr_qm_equotaoff, 0, 0, 0, &tp);
+ if (error)
+ return error;
+
+ qoffi = xfs_trans_get_qoff_item(tp, startqoff,
+ flags & XFS_ALL_QUOTA_ACCT);
+ xfs_trans_log_quotaoff_item(tp, qoffi);
+
+ /*
+ * We have to make sure that the transaction is secure on disk before we
+ * return and actually stop quota accounting. So, make it synchronous.
+ * We don't care about quotoff's performance.
+ */
+ xfs_trans_set_sync(tp);
+ return xfs_trans_commit(tp);
+}
/*
* Turn off quota accounting and/or enforcement for all udquots and/or
@@ -541,74 +601,6 @@ xfs_qm_scall_setqlim(
return error;
}
-STATIC int
-xfs_qm_log_quotaoff_end(
- struct xfs_mount *mp,
- struct xfs_qoff_logitem *startqoff,
- uint flags)
-{
- struct xfs_trans *tp;
- int error;
- struct xfs_qoff_logitem *qoffi;
-
- error = xfs_trans_alloc(mp, &M_RES(mp)->tr_qm_equotaoff, 0, 0, 0, &tp);
- if (error)
- return error;
-
- qoffi = xfs_trans_get_qoff_item(tp, startqoff,
- flags & XFS_ALL_QUOTA_ACCT);
- xfs_trans_log_quotaoff_item(tp, qoffi);
-
- /*
- * We have to make sure that the transaction is secure on disk before we
- * return and actually stop quota accounting. So, make it synchronous.
- * We don't care about quotoff's performance.
- */
- xfs_trans_set_sync(tp);
- return xfs_trans_commit(tp);
-}
-
-
-STATIC int
-xfs_qm_log_quotaoff(
- struct xfs_mount *mp,
- struct xfs_qoff_logitem **qoffstartp,
- uint flags)
-{
- struct xfs_trans *tp;
- int error;
- struct xfs_qoff_logitem *qoffi;
-
- *qoffstartp = NULL;
-
- error = xfs_trans_alloc(mp, &M_RES(mp)->tr_qm_quotaoff, 0, 0, 0, &tp);
- if (error)
- goto out;
-
- qoffi = xfs_trans_get_qoff_item(tp, NULL, flags & XFS_ALL_QUOTA_ACCT);
- xfs_trans_log_quotaoff_item(tp, qoffi);
-
- spin_lock(&mp->m_sb_lock);
- mp->m_sb.sb_qflags = (mp->m_qflags & ~(flags)) & XFS_MOUNT_QUOTA_ALL;
- spin_unlock(&mp->m_sb_lock);
-
- xfs_log_sb(tp);
-
- /*
- * We have to make sure that the transaction is secure on disk before we
- * return and actually stop quota accounting. So, make it synchronous.
- * We don't care about quotoff's performance.
- */
- xfs_trans_set_sync(tp);
- error = xfs_trans_commit(tp);
- if (error)
- goto out;
-
- *qoffstartp = qoffi;
-out:
- return error;
-}
-
/* Fill out the quota context. */
static void
xfs_qm_scall_getquota_fill_qc(
--
2.35.1
next prev parent reply other threads:[~2022-10-24 4:55 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-24 4:52 [PATCH 5.4 CANDIDATE 00/26] xfs stable candidate patches for 5.4.y (from v5.7) Chandan Babu R
2022-10-24 4:52 ` [PATCH 5.4 CANDIDATE 01/26] xfs: open code insert range extent split helper Chandan Babu R
2022-10-24 4:52 ` [PATCH 5.4 CANDIDATE 02/26] xfs: rework insert range into an atomic operation Chandan Babu R
2022-10-24 4:52 ` [PATCH 5.4 CANDIDATE 03/26] xfs: rework collapse " Chandan Babu R
2022-10-24 4:52 ` [PATCH 5.4 CANDIDATE 04/26] xfs: add a function to deal with corrupt buffers post-verifiers Chandan Babu R
2022-10-24 4:52 ` [PATCH 5.4 CANDIDATE 05/26] xfs: xfs_buf_corruption_error should take __this_address Chandan Babu R
2022-10-24 4:52 ` [PATCH 5.4 CANDIDATE 06/26] xfs: fix buffer corruption reporting when xfs_dir3_free_header_check fails Chandan Babu R
2022-10-24 4:52 ` [PATCH 5.4 CANDIDATE 07/26] xfs: check owner of dir3 data blocks Chandan Babu R
2022-10-24 4:52 ` [PATCH 5.4 CANDIDATE 08/26] xfs: check owner of dir3 blocks Chandan Babu R
2022-10-24 4:52 ` [PATCH 5.4 CANDIDATE 09/26] xfs: Use scnprintf() for avoiding potential buffer overflow Chandan Babu R
2022-10-24 4:52 ` [PATCH 5.4 CANDIDATE 10/26] xfs: remove the xfs_disk_dquot_t and xfs_dquot_t Chandan Babu R
2022-10-24 4:52 ` [PATCH 5.4 CANDIDATE 11/26] xfs: remove the xfs_dq_logitem_t typedef Chandan Babu R
2022-10-24 4:53 ` [PATCH 5.4 CANDIDATE 12/26] xfs: remove the xfs_qoff_logitem_t typedef Chandan Babu R
2022-10-24 4:53 ` Chandan Babu R [this message]
2022-10-24 4:53 ` [PATCH 5.4 CANDIDATE 14/26] xfs: factor out quotaoff intent AIL removal and memory free Chandan Babu R
2022-10-24 4:53 ` [PATCH 5.4 CANDIDATE 15/26] xfs: fix unmount hang and memory leak on shutdown during quotaoff Chandan Babu R
2022-10-24 4:53 ` [PATCH 5.4 CANDIDATE 16/26] xfs: preserve default grace interval during quotacheck Chandan Babu R
2022-10-24 4:53 ` [PATCH 5.4 CANDIDATE 17/26] xfs: Lower CIL flush limit for large logs Chandan Babu R
2022-10-24 4:53 ` [PATCH 5.4 CANDIDATE 18/26] xfs: Throttle commits on delayed background CIL push Chandan Babu R
2022-10-24 4:53 ` [PATCH 5.4 CANDIDATE 19/26] xfs: factor common AIL item deletion code Chandan Babu R
2022-10-24 4:53 ` [PATCH 5.4 CANDIDATE 20/26] xfs: tail updates only need to occur when LSN changes Chandan Babu R
2022-10-24 4:53 ` [PATCH 5.4 CANDIDATE 21/26] xfs: don't write a corrupt unmount record to force summary counter recalc Chandan Babu R
2022-10-24 4:53 ` [PATCH 5.4 CANDIDATE 22/26] xfs: trylock underlying buffer on dquot flush Chandan Babu R
2022-10-24 4:53 ` [PATCH 5.4 CANDIDATE 23/26] xfs: factor out a new xfs_log_force_inode helper Chandan Babu R
2022-10-24 4:53 ` [PATCH 5.4 CANDIDATE 24/26] xfs: reflink should force the log out if mounted with wsync Chandan Babu R
2022-10-24 4:53 ` [PATCH 5.4 CANDIDATE 25/26] xfs: move inode flush to the sync workqueue Chandan Babu R
2022-10-24 4:53 ` [PATCH 5.4 CANDIDATE 26/26] xfs: fix use-after-free on CIL context on shutdown Chandan Babu R
2022-10-24 21:43 ` [PATCH 5.4 CANDIDATE 00/26] xfs stable candidate patches for 5.4.y (from v5.7) Darrick J. Wong
2022-10-25 5:44 ` Chandan Babu R
2022-10-25 16:47 ` Darrick J. Wong
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=20221024045314.110453-14-chandan.babu@oracle.com \
--to=chandan.babu@oracle.com \
--cc=amir73il@gmail.com \
--cc=djwong@kernel.org \
--cc=leah.rumancik@gmail.com \
--cc=linux-xfs@vger.kernel.org \
/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.