From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7E9BAC369AB for ; Mon, 21 Apr 2025 17:19:27 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EE32B6B0022; Mon, 21 Apr 2025 13:19:25 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id EB8A36B0023; Mon, 21 Apr 2025 13:19:25 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D83446B0024; Mon, 21 Apr 2025 13:19:25 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id B9F386B0022 for ; Mon, 21 Apr 2025 13:19:25 -0400 (EDT) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 8E388120A07 for ; Mon, 21 Apr 2025 17:19:26 +0000 (UTC) X-FDA: 83358712332.29.B4FC3D6 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf14.hostedemail.com (Postfix) with ESMTP id E460A100005 for ; Mon, 21 Apr 2025 17:19:24 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=EJCuQvip; spf=pass (imf14.hostedemail.com: domain of djwong@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=djwong@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1745255965; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=ns4DDeu/3wI8vfGm6PNNgaMzOpLlqGv8pmtA98p1gLw=; b=LecrXR5W/crHQL7CstOESn6ZPaBWv0bsdGqyNxQ+kH6ahiF834EOdWXEKdkZmx52Or2Ebm vKz9KD+hyeTEZ0NrAyGl4u0T3Uw8XC8J/RIN9fst5nSOgA/hotGocvtOLrQIkWDx4skMs8 KjxE1ZA01Kr4Hux2t2DbaMNmj5RHO+k= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=EJCuQvip; spf=pass (imf14.hostedemail.com: domain of djwong@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=djwong@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1745255965; a=rsa-sha256; cv=none; b=OThjr9dW2hr0ec7WzPOLp93MXTAa7hDNorSJx1wK9WZhH/Qjy4v4fBppCc7qtZ9YjDBBac 1BhRYzMLo33qNeFsdr/mhcCZ2kHZDbcZvaLbbQOrdNCYBs6asQ9lrbW8ZW1obgviI/aupe wEFNgqTTTndI88Q5W61EIScU9Ihmb24= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 28D625C0FED; Mon, 21 Apr 2025 17:17:07 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id D66CBC4CEE4; Mon, 21 Apr 2025 17:19:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1745255963; bh=ZOmyRXmRoEyIIWzuCFtXPMy0+SkSJbikUvZaUoGvQcU=; h=Date:Subject:From:To:Cc:In-Reply-To:References:From; b=EJCuQvipDVnY7id7jE4MK9n5lGKrbLeIYtiuKJhYyaNmqemhOz6tlamK0cMp+JFWd u4g9WYtQuzsn9aKVlpaJ+hLd0p/wNI4WpN4G5PM1LHLFGRa25fS8DxRQLq7j0Tmdon CFY/79wHx6dwdhFy7JTMJqR9JNhr+jExU2myFOGjNla1a/GwAroSQ2umF/HqG2G0nQ M3TO99CfyD/dwtkLArTLIaNZd+98UnM9uW0d2QM7vr0pxgp1POL/lz3iHkbhozv0sH qi5Ic/SkR237M0LkTpuy/Lg7WPopws1Jh8xOK7EZV6dtMFqGas/GhAQ+PfCAy4f4Bn J57HQMt14lvIw== Date: Mon, 21 Apr 2025 10:19:23 -0700 Subject: [PATCH 3/3] xfs: stop using set_blocksize From: "Darrick J. Wong" To: djwong@kernel.org, cem@kernel.org, axboe@kernel.dk Cc: shinichiro.kawasaki@wdc.com, linux-mm@kvack.org, mcgrof@kernel.org, linux-fsdevel@vger.kernel.org, linux-xfs@vger.kernel.org, willy@infradead.org, hch@infradead.org, linux-block@vger.kernel.org Message-ID: <174525589090.2138337.6822381628832847466.stgit@frogsfrogsfrogs> In-Reply-To: <174525589013.2138337.16473045486118778580.stgit@frogsfrogsfrogs> References: <174525589013.2138337.16473045486118778580.stgit@frogsfrogsfrogs> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-Rspam-User: X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: E460A100005 X-Stat-Signature: twdnoeygj4sd4qww1zqtefq33tuxkhah X-HE-Tag: 1745255964-550386 X-HE-Meta: U2FsdGVkX19fraOitLKkEgtOZsWo8wz2rvB/991AfgKngNQLSggc6OkSYJ5Gtw6jHLzRgYfOYwQy5u0/NkJZLO2YaFly98QmgtzdE4e8uLIA68f1YPYiYoWMwfCCv56Cj3f6tCovjwdu27Vm5I4Zi43somPaF0ireq1wczwplhtiAtJoPp6Q+Gm6ASbX1S8RNga2Km8P3lbahYpus57cqBeZiGbdujFFcWsWAmY+IkpCQFlyZt4cyByCJ2uH0xKwOWD36wy1jyp6xIIYcirUsRRvWqsQ8EVzeUFWDs80o+znGJAhP0FJQJ4wRL0pZsFTfcUlCqYjRkVsFgFHa7QhAiNd0IfKm1LPITHcb82yWQvFYuGKYOyPEzau13Wc4CHvmQmfwdJx3scNgSFxNUzcLA4Mr5C/M+/z/hIgAht807ETyjZK5n+7U+yXGl0cKTMvdvdSyR/dqAkEjKi8FyAnPFqyLNa2SfB/K0hUxyNHknhNOfOtUoZhAitFDdhmv+VhvDryBuJ1D0e9HVXJogNzfZZgupVEvNcdZZS9B3DJnU9Yb7bsEs/GnO5l3ZJdrFcsqifOgndEIfbjGLl3FAmo7ah8hVca6zsLQrWNJO6dGNLUMh0NghIvyoy74J22X2MwMniXn4qd6mB2Zuj34CdZ+UGIhiPuS/sgOtz6zFLLY7grAJ0fc2C7xx79uwPvSyuQ8paVEuoQAgjmMGnf3a66Lj/+X351ZaF4riUaP7ITqWzurNgMZsXqVCYw0q0K9XzCzBoB4/EfZUsRR3LzkqaVVPccrrfMlMlHCCK936sD7Ch6VZGwXKMsiyl2DH0tJ3waYZ8c4V4ft8bapXW2tdkKTmUavHkG/J19HA56rtBt80moBvSXxtaUNTNRTMxc6xw/NWR1DO1SswC0KxLtdkrM8AIPvKjAY4Htjw0g1ORQJ8+hoJcrHcL9jrN0npnEPeaQSO9pG1N1H+uGZuzfDWj UtFGJ/3x wGwS6dLyJSVFLaNSLlq+oeTKGAgo94Tl4AgJlWrj2L7hNV4nseB2rp3ocg3YFQxIkFFsKPoEK62vcuiQ0i700U/rhw9LMu/NNUAdzZSeMm+z66hMGlOFHTQBPtBJ9y4JQWgzhJueSaFYf+W/DVSaQZle9n9yZPm5S1toksY3rgiyG+Cv5+PXVFdUDfS1lKaUqetA02dnQU46CzorVXQIxnKXVfNojv/koQNvNnW40D1vFoxBJvzeGWxxL7Ptmplc0Ah4Etnm7uzZYmulT94ctbJHOPOn6fZy+9j4zZCwP4i58CpOIbTYwQKew2+utcp9armC+ X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: From: Darrick J. Wong XFS has its own buffer cache for metadata that uses submit_bio, which means that it no longer uses the block device pagecache for anything. Create a more lightweight helper that runs the blocksize checks and flushes dirty data and use that instead. No more truncating the pagecache because XFS does not use it or care about it. Signed-off-by: "Darrick J. Wong" --- fs/xfs/xfs_buf.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/fs/xfs/xfs_buf.c b/fs/xfs/xfs_buf.c index 1a2b3f06fa717e..5ae77ffdc947b1 100644 --- a/fs/xfs/xfs_buf.c +++ b/fs/xfs/xfs_buf.c @@ -1719,18 +1719,25 @@ xfs_setsize_buftarg( struct xfs_buftarg *btp, unsigned int sectorsize) { + int error; + /* Set up metadata sector size info */ btp->bt_meta_sectorsize = sectorsize; btp->bt_meta_sectormask = sectorsize - 1; - if (set_blocksize(btp->bt_bdev_file, sectorsize)) { + error = bdev_validate_blocksize(btp->bt_bdev, sectorsize); + if (error) { xfs_warn(btp->bt_mount, - "Cannot set_blocksize to %u on device %pg", - sectorsize, btp->bt_bdev); + "Cannot use blocksize %u on device %pg, err %d", + sectorsize, btp->bt_bdev, error); return -EINVAL; } - return 0; + /* + * Flush the block device pagecache so our bios see anything dirtied + * before mount. + */ + return sync_blockdev(btp->bt_bdev); } int