From 98cce50ed5018d03b820933c82cb8488e277b92b Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Mon, 5 Jun 2017 17:22:57 +0200 Subject: [PATCH] drop queue-3.18/xfs-xfs_trans_alloc_empty.patch --- queue-3.18/series | 1 - queue-3.18/xfs-xfs_trans_alloc_empty.patch | 72 ---------------------- 2 files changed, 73 deletions(-) delete mode 100644 queue-3.18/xfs-xfs_trans_alloc_empty.patch diff --git a/queue-3.18/series b/queue-3.18/series index a298432337b..e69685a9358 100644 --- a/queue-3.18/series +++ b/queue-3.18/series @@ -31,4 +31,3 @@ xfs-fix-up-quotacheck-buffer-list-error-handling.patch xfs-fix-indlen-accounting-error-on-partial-delalloc-conversion.patch xfs-bad-assertion-for-delalloc-an-extent-that-start-at-i_size.patch xfs-fix-unaligned-access-in-xfs_btree_visit_blocks.patch -xfs-xfs_trans_alloc_empty.patch diff --git a/queue-3.18/xfs-xfs_trans_alloc_empty.patch b/queue-3.18/xfs-xfs_trans_alloc_empty.patch deleted file mode 100644 index 7b8bcddcf2c..00000000000 --- a/queue-3.18/xfs-xfs_trans_alloc_empty.patch +++ /dev/null @@ -1,72 +0,0 @@ -From hch@lst.de Mon Jun 5 17:05:12 2017 -From: Christoph Hellwig -Date: Sat, 3 Jun 2017 15:18:31 +0200 -Subject: xfs: xfs_trans_alloc_empty -To: stable@vger.kernel.org -Cc: linux-xfs@vger.kernel.org, "Darrick J . Wong" -Message-ID: <20170603131836.26661-21-hch@lst.de> - -From: Christoph Hellwig - -This is a partial cherry-pick of commit e89c041338 -("xfs: implement the GETFSMAP ioctl"), which also adds this helper, and -a great example of why feature patches should be properly split into -their parts. - -Signed-off-by: Darrick J. Wong -[hch: split from the larger patch for -stable] -Signed-off-by: Christoph Hellwig ---- - fs/xfs/xfs_trans.c | 22 ++++++++++++++++++++++ - fs/xfs/xfs_trans.h | 2 ++ - 2 files changed, 24 insertions(+) - -diff --git a/fs/xfs/xfs_trans.c b/fs/xfs/xfs_trans.c -index 70f42ea86dfb..a280e126491f 100644 ---- a/fs/xfs/xfs_trans.c -+++ b/fs/xfs/xfs_trans.c -@@ -263,6 +263,28 @@ xfs_trans_alloc( - } - - /* -+ * Create an empty transaction with no reservation. This is a defensive -+ * mechanism for routines that query metadata without actually modifying -+ * them -- if the metadata being queried is somehow cross-linked (think a -+ * btree block pointer that points higher in the tree), we risk deadlock. -+ * However, blocks grabbed as part of a transaction can be re-grabbed. -+ * The verifiers will notice the corrupt block and the operation will fail -+ * back to userspace without deadlocking. -+ * -+ * Note the zero-length reservation; this transaction MUST be cancelled -+ * without any dirty data. -+ */ -+int -+xfs_trans_alloc_empty( -+ struct xfs_mount *mp, -+ struct xfs_trans **tpp) -+{ -+ struct xfs_trans_res resv = {0}; -+ -+ return xfs_trans_alloc(mp, &resv, 0, 0, XFS_TRANS_NO_WRITECOUNT, tpp); -+} -+ -+/* - * Record the indicated change to the given field for application - * to the file system's superblock when the transaction commits. - * For now, just store the change in the transaction structure. -diff --git a/fs/xfs/xfs_trans.h b/fs/xfs/xfs_trans.h -index 61b7fbdd3ebd..98024cb933ef 100644 ---- a/fs/xfs/xfs_trans.h -+++ b/fs/xfs/xfs_trans.h -@@ -159,6 +159,8 @@ typedef struct xfs_trans { - int xfs_trans_alloc(struct xfs_mount *mp, struct xfs_trans_res *resp, - uint blocks, uint rtextents, uint flags, - struct xfs_trans **tpp); -+int xfs_trans_alloc_empty(struct xfs_mount *mp, -+ struct xfs_trans **tpp); - void xfs_trans_mod_sb(xfs_trans_t *, uint, int64_t); - - struct xfs_buf *xfs_trans_get_buf_map(struct xfs_trans *tp, --- -2.11.0 - -- 2.47.3