Blame SOURCES/0071-fs-ntfs3-Remove-tmp-pointer-upcase-in-fill_super.patch

Kmods SIG 63c143
From 0056b273757b3057a5aff73f96a7fa134641caf4 Mon Sep 17 00:00:00 2001
Kmods SIG 63c143
From: Kari Argillander <kari.argillander@gmail.com>
Kmods SIG 63c143
Date: Thu, 9 Sep 2021 21:09:40 +0300
Kmods SIG 63c143
Subject: [Backport 0056b273757b] src: Remove tmp pointer upcase in
Kmods SIG 63c143
 fill_super
Kmods SIG 63c143
Kmods SIG 63c143
We can survive without this tmp point upcase. So remove it we don't have
Kmods SIG 63c143
so many tmp pointer in this function.
Kmods SIG 63c143
Kmods SIG 63c143
Signed-off-by: Kari Argillander <kari.argillander@gmail.com>
Kmods SIG 63c143
Signed-off-by: Konstantin Komarov <almaz.alexandrovich@paragon-software.com>
Kmods SIG 63c143
---
Kmods SIG 63c143
 src/super.c | 11 ++++-------
Kmods SIG 63c143
 1 file changed, 4 insertions(+), 7 deletions(-)
Kmods SIG 63c143
Kmods SIG 63c143
diff --git a/src/super.c b/src/super.c
Kmods SIG 63c143
index e5ec808bd0522cb986ef11cbcc3ece57f6988916..8ce0d4f439a1e26b9f12dbdab0fbb946da859adb 100644
Kmods SIG 63c143
--- a/src/super.c
Kmods SIG 63c143
+++ b/src/super.c
Kmods SIG 63c143
@@ -884,7 +884,6 @@ static int ntfs_fill_super(struct super_block *sb, struct fs_context *fc)
Kmods SIG 63c143
 	const struct VOLUME_INFO *info;
Kmods SIG 63c143
 	u32 idx, done, bytes;
Kmods SIG 63c143
 	struct ATTR_DEF_ENTRY *t;
Kmods SIG 63c143
-	u16 *upcase;
Kmods SIG 63c143
 	u16 *shared;
Kmods SIG 63c143
 	struct MFT_REF ref;
Kmods SIG 63c143
 
Kmods SIG 63c143
@@ -1184,11 +1183,9 @@ static int ntfs_fill_super(struct super_block *sb, struct fs_context *fc)
Kmods SIG 63c143
 		goto out;
Kmods SIG 63c143
 	}
Kmods SIG 63c143
 
Kmods SIG 63c143
-	upcase = sbi->upcase;
Kmods SIG 63c143
-
Kmods SIG 63c143
 	for (idx = 0; idx < (0x10000 * sizeof(short) >> PAGE_SHIFT); idx++) {
Kmods SIG 63c143
 		const __le16 *src;
Kmods SIG 63c143
-		u16 *dst = Add2Ptr(upcase, idx << PAGE_SHIFT);
Kmods SIG 63c143
+		u16 *dst = Add2Ptr(sbi->upcase, idx << PAGE_SHIFT);
Kmods SIG 63c143
 		struct page *page = ntfs_map_page(inode->i_mapping, idx);
Kmods SIG 63c143
 
Kmods SIG 63c143
 		if (IS_ERR(page)) {
Kmods SIG 63c143
@@ -1207,10 +1204,10 @@ static int ntfs_fill_super(struct super_block *sb, struct fs_context *fc)
Kmods SIG 63c143
 		ntfs_unmap_page(page);
Kmods SIG 63c143
 	}
Kmods SIG 63c143
 
Kmods SIG 63c143
-	shared = ntfs_set_shared(upcase, 0x10000 * sizeof(short));
Kmods SIG 63c143
-	if (shared && upcase != shared) {
Kmods SIG 63c143
+	shared = ntfs_set_shared(sbi->upcase, 0x10000 * sizeof(short));
Kmods SIG 63c143
+	if (shared && sbi->upcase != shared) {
Kmods SIG 63c143
+		kvfree(sbi->upcase);
Kmods SIG 63c143
 		sbi->upcase = shared;
Kmods SIG 63c143
-		kvfree(upcase);
Kmods SIG 63c143
 	}
Kmods SIG 63c143
 
Kmods SIG 63c143
 	iput(inode);
Kmods SIG 63c143
-- 
Kmods SIG 63c143
2.31.1
Kmods SIG 63c143