From patchwork Thu Feb 20 06:22:36 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Yuezhang.Mo@sony.com" X-Patchwork-Id: 13983372 Received: from mx07-001d1705.pphosted.com (mx07-001d1705.pphosted.com [185.132.183.11]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7539A1632DF for ; Thu, 20 Feb 2025 06:23:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=185.132.183.11 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740032586; cv=fail; b=cfqYYFvfoVW1dcF6ECinvjDMHbhLQ76OD2WMDF+qyYyq6IMT9VVBnL9c13eQ3cyjAuY2qee+lPNMrjsXrjWxFPU5z3XEncngIV/OjUuEOysJ2Wh+7fGhEnHt+oMtQg4a2MWNAe6nUP2XMUhBcfTJJUnOBEwR1gDnLTjhCw1UqYE= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740032586; c=relaxed/simple; bh=Cj5g4LHvcv1BYoVMo78jGvagefaFg0ejJWpnduATl9U=; h=From:To:CC:Subject:Date:Message-ID:Content-Type:MIME-Version; b=ZEcj8lVxQiytzj/wdQrvG7tHqASOEaC34pme/GFhEDkdL7PfDYEV+FGLXPlRMZNCJaan94ZOP9QB6AWKD2tp9mVqdahZjY42e6tB3k4OnQAJ37wemQ3UsJ2wLjgcjGVBA/N5VuVv3najEazW1HN+2hb1cTD7p2etFxrBf45lDaw= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=sony.com; spf=pass smtp.mailfrom=sony.com; dkim=pass (2048-bit key) header.d=sony.com header.i=@sony.com header.b=CVxlkbiE; arc=fail smtp.client-ip=185.132.183.11 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=sony.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=sony.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=sony.com header.i=@sony.com header.b="CVxlkbiE" Received: from pps.filterd (m0209326.ppops.net [127.0.0.1]) by mx08-001d1705.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 51K0IEbi024302; Thu, 20 Feb 2025 06:22:44 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sony.com; h=cc :content-transfer-encoding:content-type:date:from:message-id :mime-version:subject:to; s=S1; bh=Cj5g4LHvcv1BYoVMo78jGvagefaFg 0ejJWpnduATl9U=; b=CVxlkbiEfuQfG2erXryGelsojBXjZOjGrISa7Kkur9OG6 +PmBXclJ2G84+Sngt09jC9Big+CmSDGuTWK04vWKKuaM4kWK9T+rsd3OlFgpkAEX vRdpuk//SSqCkCa+YZJ9593PVi5bzLN+aOA3GwSINLLZJ0N90vBlTbwQSRnTUj84 0jykcoaPQCSBjPxRhgMNLebnc327YEh+ukZ4Fomdpj1H4Ql4iqGyHPVLqWqjD6U5 H7O4H3HO+4CfPb9bVwmJpmM0Jb2elk3qCDrbtC93z/0NluL9LygGT/jFWjZLsbVl /zgBbEGHoENYU7rvMaM0/oDYoPemvojLuO0BRH5+A== Received: from apc01-psa-obe.outbound.protection.outlook.com (mail-psaapc01lp2041.outbound.protection.outlook.com [104.47.26.41]) by mx08-001d1705.pphosted.com (PPS) with ESMTPS id 44vyyh9kjr-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 20 Feb 2025 06:22:43 +0000 (GMT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=e6ZrZpN1f5NrX0DgGwOTKc1jup8O8nMGmxz/wjug7hq7+Pf8AgjRRArFPUeRRXybfu+Od5udT/VUhyLh+r0CLX6zKO8x0zomDHw38OZR/GSpoIcOBsMf5c7F4G/DVhx5OwgZSq+gcOH5/w+23Rz9nlaknhFXsOkBgE2iSOLfbdjofvRzaymI+D+jKZPdze18pXoeVF8fY7R45wNtLgXVjl4YqZ0DcZppvA8YJuSArtG6lAKHRaOe9M1kOsHebovbeAXvo3/Mbfm7cRZo4TxEt1Ko01Pgd+zMRLA/uO1fdneCoEjePOyWy7oqyn5Glov2sjAYJZFt1w5hPe2gHmoEaQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Cj5g4LHvcv1BYoVMo78jGvagefaFg0ejJWpnduATl9U=; b=O3P0ANeQm8LPyDqDEGCn9Py4rqjJ1WBsJHzu+YX8Exh0I4K+B8cxeLjcOsqX2ZcWwZauh72Bz6YJXCCYC+hhdLqMaNwWxtBON094aDOhQsmT4gnVSO4gY+prpSfvYQBoZfeH5Mj1ZHlQuaA9GLGAxc7qptp9FOt3/r5MjBVc78EQAr2u1Z3mwa4mx4i8AAeVKiopkk98BoHi+lvXXronR8grckJm5ftO/62Wlv45njPgYGmo5LApdPV/npHwnf35rQ7hufpZpRf1/dNTNCxQa9hHfuFEM2BTubAO5qNqC5GnjWPT/6vpQ+fo0WuE0cMi17/TKanQdoWR5s2nOY/QSQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=sony.com; dmarc=pass action=none header.from=sony.com; dkim=pass header.d=sony.com; arc=none Received: from PUZPR04MB6316.apcprd04.prod.outlook.com (2603:1096:301:fc::7) by KL1PR04MB6782.apcprd04.prod.outlook.com (2603:1096:820:d0::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8466.16; Thu, 20 Feb 2025 06:22:37 +0000 Received: from PUZPR04MB6316.apcprd04.prod.outlook.com ([fe80::409e:64d3:cee0:7b06]) by PUZPR04MB6316.apcprd04.prod.outlook.com ([fe80::409e:64d3:cee0:7b06%5]) with mapi id 15.20.8445.017; Thu, 20 Feb 2025 06:22:37 +0000 From: "Yuezhang.Mo@sony.com" To: "linkinjeon@kernel.org" , "sj1557.seo@samsung.com" CC: "linux-fsdevel@vger.kernel.org" Subject: [PATCH v1] exfat: fix mount options cannot be modified via remount Thread-Topic: [PATCH v1] exfat: fix mount options cannot be modified via remount Thread-Index: AduDXpG0E4I/5vkBTR+Bl2tMNbHX3A== Date: Thu, 20 Feb 2025 06:22:36 +0000 Message-ID: Accept-Language: en-US, zh-CN Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PUZPR04MB6316:EE_|KL1PR04MB6782:EE_ x-ms-office365-filtering-correlation-id: c18b78b1-bd58-4b19-4045-08dd5176f84b x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|366016|1800799024|376014|38070700018; x-microsoft-antispam-message-info: =?utf-8?q?qNoEHG2L7QyPyur1aFAtFM+RFSJUY8F?= =?utf-8?q?VIP0Nj0GhcUPEb6KHvxtIM7A8C59zyTCzxaykBC1RXMXfyy/s+Qkdl3YAwhbC6Wi0?= =?utf-8?q?BeKKOIQRIHSEYrlXiyBgUXLR50ASHsNjilrIo0mE8eSSpSfMuwB7YmFi1Y88aRhtH?= =?utf-8?q?cJAmO5+z5Dm8cTLgyrRiZNF2sn9hCTuinVmxVs56Qpgr7I7LbxEPJazyi0Mg4XGpN?= =?utf-8?q?xL0eougpPmPoSIJez1X/j0wzPloqoPvUGM1StxhZ/aA62VsBD4oBfVNUGMQwyAZ37?= =?utf-8?q?R/PKwgUMhMew6NnxPUpMc6/doRR24db79zei3LXvQPYiIROE6BJK9ALuASEpSiX+Q?= =?utf-8?q?Qb+/TbVqyBv+KwyJ9pkx0wWl7iAOJcNHQfHPPfOMYQO3Vi5bTM8vc71skxts41CLd?= =?utf-8?q?lWGwha1pNXK0tRWsI4U5HMTIbZxFL5WEk0hjYJ50Fz1DlOsT4YyetAxY3b1MIV2mN?= =?utf-8?q?/ZV/IzMAfZOPtlInHBPfYqhHhWRS6BWjyEVGKdz01OXnYceKvF4J+rUVAGRNKlIXG?= =?utf-8?q?l91xsM/zHxdkA/U53X1iFkO5YIdltqkvjg1wx2kvboaxoiNG/A/x8tvw6gD3tUrn1?= =?utf-8?q?qscGX5nCUlW7g2q3a7Wmi96d4yYeH/d9fGp1y9BoFJeLo0lNH45OwFpBuMPe3CFq+?= =?utf-8?q?64AxRowQpxY0CXoCcxlaH5EGatgV+LsjTEOavhL5XDIlbehG+RtzKrxPDEc/YTtHa?= =?utf-8?q?2m5nNWzomLoTJEJ9vceazVEmohMckf2r4mX/lECYAxRBHGc7zpk2c/mmwbyAjKA3p?= =?utf-8?q?XfJynepFR15DoL0TYqwcJDYk8rsmVxtUZCxHNV8d35U5cHe/ioWSGVbi2n2ee5l2H?= =?utf-8?q?CgxeoOuhWswVzda2W+MOCVTxRgo9ypycoAsa7yxnWS+0ivxAxRdFrzB3iNJPNGFEJ?= =?utf-8?q?TPOANWmyo83LyxfT7CluwnGKr9Wexjm3Xv/+A0hjs6MYD6nJwRwKe5YtuEMejmaNb?= =?utf-8?q?2tiZ/q3+IVir0ptBvpoq4wxX2ofUGx9gnxzJYbquFMmjdEF+0gReZHVXhKZJgo2bd?= =?utf-8?q?zvSZZeXR7bRYiqmGQWDnJ+1ab7SFkjLJy49FoPwnIhLLUr6Qj0UrXCNtupgAHxCUR?= =?utf-8?q?aOpwN27+VrHhHk6HaFSMt9OJ5Q5Yyd1bGMTKP4u4g4fXztwrCqz4Ddr5ksYyl+q51?= =?utf-8?q?Zf5+cSxB3Mpo3uCKNOSmp5oQltZTVMlPAFZDZhoY0BZSKcPM2S8p5f/7gBH6br/Ws?= =?utf-8?q?zLJ1FLM/+N9Whe81QX3CDtn6TcisXf9gCquMyehgVBhiuKtwTVNnrimidli9fvSVX?= =?utf-8?q?geAGYLs3NgyWSTjsAPOR/bV1lvCNCx0GA4R7FNw3+RHAxxN4zZRYrvrVBZXo+9ohJ?= =?utf-8?q?fLf1v+OxnjCJF+x6KVBvpsM9vdWHstldfZKge7eBySCQbBVf+OoXYrVM11SRjP3Oq?= =?utf-8?q?lW6r2B4b5pQ?= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:zh-cn;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PUZPR04MB6316.apcprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(1800799024)(376014)(38070700018);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?q?6RHwg8BSKqRZt0YzDoePrbDRuaco?= =?utf-8?q?aptBdtUQwquTzejlnYoofS54rzHJ77tegtH10FpE2lqCSIvjmSoLT6M4u4uoR64vv?= =?utf-8?q?i8RVXNFfxP+gfNaudA27ceCmHHmAlc6PGdyL7jN5iBR4oEfW/gPOlJvkxUgYjQ3LA?= =?utf-8?q?Ty3IlacXrhYoRqA4dZLkxU57/IACkJtxQrVuzESynBzx0p9KtIKgyOUL7Qnrkw11/?= =?utf-8?q?HzzsweYJ8E1aQwd+pZ3XZ1VFKhoVk0KJq7bjBI7f7xX/NfASIJItySnCrUdeYdDVS?= =?utf-8?q?0WmSi61VjsUl7uEBQpnlMGZnQ0lHg7AhbEv4EZSOvWJPdkWuTpum/xCwptX5pR7uL?= =?utf-8?q?2LK9CIB/1wldaEU8w6CDJlVktIVNOmlpu1cEJYrvm+WsIqM78/poxfjRfBSYbtpRG?= =?utf-8?q?AsH3Aio5qkS/GV2o2gWdAqf0epq6wLqQdxgrjK0Ht66+r/AAyeFlMH0VhK81u7vx1?= =?utf-8?q?ZvEkoHM+08IRzsFOKklMqSUeDqT+kexwOEJAY+eh06nWSTQt0W07ukOhdGeVWIQFm?= =?utf-8?q?55iRCOYzxcYyPO6eQ4xw5N08BBW3O+rjWTn845SFhMekuZYJ+8y10aVk922TK6B5L?= =?utf-8?q?DvOla3hAAo+ZtTFi/JfW4owN3/zCt5LH3UBKoOHble2imyYVOUqn07QxK+kwc7g3t?= =?utf-8?q?ahWCHM2lMY929oqQ4TynL6/N0ZzG1ZxHm1nCnUkuuDVZFr8d8Onsh3KdAEW99dYpS?= =?utf-8?q?CwnBfBLDvDpkxReKPLmjcfFXDGYqlYtuiDaFVlYwr9pzQMlfTHm6kbE1HnuHywbPh?= =?utf-8?q?u2Rkjm7kG/xJgkk7+DeoQkFLvNJ8nHjePk7ZHGvhMq3kSAf5+QFx3xXc9XK71xD/1?= =?utf-8?q?4JvVDj6Tnq1Lv0f3iIDXi7vMDtJvGY88KZGL07Z8EbzCqUprPCmPlGw/jaLECF/eb?= =?utf-8?q?yYbD4/s1M8GZZkZBVHfcqFvS4o9TIX1flO67e6HipzJwEjs/m6wKFtWr6YIS4XMT8?= =?utf-8?q?ld3B2cNG54S7EB+3HNgIkWSffNHje+AVzcr7Q91/aUvAQaI0BbHr2QzUByB/epv8d?= =?utf-8?q?tw0pWDAgvNgi2BH5OYCUkun6isbCPmNjFp/Etpge5OUfvV4k9pS3WDgV5Wii2ggCE?= =?utf-8?q?ZFrZl8QffWihciiXXnjYRciSuZbdyyMhBYbPbLxtljEScwMI/JAgpKg8/25+qfSPr?= =?utf-8?q?r6J2XJtIO36HQvU0oC4yJHNon+PrH28CYu3TTny8yj3wiEJ/mKTvH8o7KS6sg3iIv?= =?utf-8?q?Wk83Q65Cre0KcDlhFL5pG6JHmMnoPhLUlahlIa0XhgwlcSqCBgnx+QA7AF9OKO6Lf?= =?utf-8?q?+X5PRSUuuOoklI8b3pyhzHMhz6Kp/HjdcyLCUZRgQD3KDiptFlo5OKnTEaa/sHhCf?= =?utf-8?q?wMQOFNZ+KOx3yaoF7TcuEVg3oOFHO4fq+IsHAi4SEqYA0iQMcgmIDv4+3eS5Fl4dp?= =?utf-8?q?Q6sfhJjjoVaGZKAHv6nECTNY74sLglZmrToghwQlz2IuG0Tukj0lmU+cKVw4EYFmW?= =?utf-8?q?yDm6iVtw9oL8rx0caBPKE0+UXqRe2TjBHlQKvWVvAfRoodO2JdJh4rR2tEAXsGTc+?= =?utf-8?q?+k9rKp0F4xcd?= Precedence: bulk X-Mailing-List: linux-fsdevel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: llFPhembcZ5xHxdvEr+58MEXNtxcXqwA0gZcgOr5u1jm2A6y4tUatc6GCLiHL+nWq5ex6dpsEoeGaVkdPeOQGPvXh9ogMTnzAC64/+z081tw/Dvow9F+ZtvjlbN7UpqI72Zbk15k75429RQBfp+AmngDgsBBfk9HMIc8Tsm5xnqoSXF2F1b91YFDHv/83Dq+aFGu4+qZ/vz75Wi5a8oNBcUzS/Gr8e4EAr1DhyhPFVAOSYHmBOWb+iXgAysRJufcQxj3cbNwJKqpINzXuIycVd8am1saKUeeyPQEqmJG5lpYpW9+yLYOf/CaLiTA/YXfvmx8L0QcBldggPQpLkmhOWidMUGjCB4U83wDHxFQZXPFBZR10WPWzQegm5OUcKsG9N6mWcRUzl4+2GFhGzE8tpRVAhCJD8/X/WGAPBQFS/jRYl41QGf/HiDodQl6RFSg6hxYIgwe8BL14BFxHi7MwYyJBKhplGSrQVm0WZMuLlzQLCdMiKokVLCEc8LO6yiuOqfG6sUXiK/cIrBhTXOqN3lpO6R7o+ybV7bt5461kqmZQy6+fVJnI/LxqbD33OBGrDv1327TKwgvT45iFGqGVE08/H+HmnyCpGCnxwEhyoeI7c0fqkF1xmzNLdKfSdl8 X-OriginatorOrg: sony.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PUZPR04MB6316.apcprd04.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c18b78b1-bd58-4b19-4045-08dd5176f84b X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Feb 2025 06:22:36.9935 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 66c65d8a-9158-4521-a2d8-664963db48e4 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: Q0VaK6vGeJHuaHwKLZINPrnQHa9N2EY4AfIo33n7uc3E+qEMrO3WHk52KjXNxOVgk9aDs7bukjxGdvdjR0cCxg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR04MB6782 X-Proofpoint-GUID: QYbOKcIwM6_ZwTBoyYDYe0SHFJvaMDi5 X-Proofpoint-ORIG-GUID: QYbOKcIwM6_ZwTBoyYDYe0SHFJvaMDi5 X-Sony-Outbound-GUID: QYbOKcIwM6_ZwTBoyYDYe0SHFJvaMDi5 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1057,Hydra:6.0.680,FMLib:17.12.68.34 definitions=2025-02-20_02,2025-02-20_02,2024-11-22_01 Without this fix, the mount options cannot be modified via remount. For example, after executing the second command below, mount option 'errors' is not modified to 'remount-ro'. mount -o errors=panic /dev/sda1 /mnt mount -o remount,errors=remount-ro /mnt The reason is that a new "struct fs_context" is allocated during remount, which when initialized in exfat_init_fs_context(), allocates a new "struct exfat_sb_info". exfat_parse_param() applies the new mount options to this new "struct exfat_sb_info" instead of the one allocated during the first mount. This commit adds a remount check in exfat_init_fs_context(), so that if it is a remount, a new "struct exfat_sb_info" is not allocated, but the one from the first mount is referenced. Fixes: 719c1e182916 ("exfat: add super block operations") Signed-off-by: Yuezhang Mo --- fs/exfat/super.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/fs/exfat/super.c b/fs/exfat/super.c index 8465033a6cf0..6a23523b1276 100644 --- a/fs/exfat/super.c +++ b/fs/exfat/super.c @@ -745,7 +745,7 @@ static void exfat_free(struct fs_context *fc) { struct exfat_sb_info *sbi = fc->s_fs_info; - if (sbi) + if (sbi && fc->purpose != FS_CONTEXT_FOR_RECONFIGURE) exfat_free_sbi(sbi); } @@ -769,6 +769,11 @@ static int exfat_init_fs_context(struct fs_context *fc) { struct exfat_sb_info *sbi; + if (fc->purpose == FS_CONTEXT_FOR_RECONFIGURE) { /* remount */ + sbi = EXFAT_SB(fc->root->d_sb); + goto out; + } + sbi = kzalloc(sizeof(struct exfat_sb_info), GFP_KERNEL); if (!sbi) return -ENOMEM; @@ -786,6 +791,7 @@ static int exfat_init_fs_context(struct fs_context *fc) sbi->options.iocharset = exfat_default_iocharset; sbi->options.errors = EXFAT_ERRORS_RO; +out: fc->s_fs_info = sbi; fc->ops = &exfat_context_ops; return 0;