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 2F66BC2BD09 for ; Mon, 1 Jul 2024 11:22:46 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 797896B0092; Mon, 1 Jul 2024 07:22:45 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 747926B00A2; Mon, 1 Jul 2024 07:22:45 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5E8886B00AC; Mon, 1 Jul 2024 07:22:45 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 331866B0092 for ; Mon, 1 Jul 2024 07:22:45 -0400 (EDT) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id CC0F7A4521 for ; Mon, 1 Jul 2024 11:22:44 +0000 (UTC) X-FDA: 82290946248.11.6C005AE Received: from mout-p-201.mailbox.org (mout-p-201.mailbox.org [80.241.56.171]) by imf19.hostedemail.com (Postfix) with ESMTP id 071CD1A001A for ; Mon, 1 Jul 2024 11:22:41 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=pankajraghav.com header.s=MBO0001 header.b=sWSGXNHd; spf=pass (imf19.hostedemail.com: domain of kernel@pankajraghav.com designates 80.241.56.171 as permitted sender) smtp.mailfrom=kernel@pankajraghav.com; dmarc=pass (policy=quarantine) header.from=pankajraghav.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1719832951; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=RnAj7fu/gnOEMmtPn1UH5DlbH0qYTyY/NJtePcvvPoQ=; b=7/YeBvkFmZO78wyQTvhXWKqkWsxCL3PksJHjFPQFdYuckg9jhgu40+e9OMZf5YjioYjoFq YIM6zosR2+/Hgb2N3wRNay0qeQneGM7nZiCxoMbJc5Q9wPbfFlj9bEQZ0CdpNiUsNfUbXT cf4RiIweWjAxTAhtEfukZlOpxZXQrE8= ARC-Authentication-Results: i=1; imf19.hostedemail.com; dkim=pass header.d=pankajraghav.com header.s=MBO0001 header.b=sWSGXNHd; spf=pass (imf19.hostedemail.com: domain of kernel@pankajraghav.com designates 80.241.56.171 as permitted sender) smtp.mailfrom=kernel@pankajraghav.com; dmarc=pass (policy=quarantine) header.from=pankajraghav.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1719832951; a=rsa-sha256; cv=none; b=77f2nB2i+0+VforG5k9AM6A5eRko0yD0G6dPPmb2gNywKSUy9U6LEwSgmcnftT+o+oiua4 TAuefa7+4e2NxAdeSuV38cP/adCJ8Q4x0Gx0rYzYyfi24GbvGVZsfq3/gS4kZkNmCaRRKp OKMWIrFTwEFTBAskOzvXORfMUC4mgCI= Received: from smtp2.mailbox.org (smtp2.mailbox.org [IPv6:2001:67c:2050:b231:465::2]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-p-201.mailbox.org (Postfix) with ESMTPS id 4WCNtj20JGz9stQ; Mon, 1 Jul 2024 13:22:37 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pankajraghav.com; s=MBO0001; t=1719832957; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=RnAj7fu/gnOEMmtPn1UH5DlbH0qYTyY/NJtePcvvPoQ=; b=sWSGXNHdaOe+lh8vuyr7s9Prmk0ZUfC1xrL0pUTCn0fBww1tZtrnHprqu2iNl82i4lze6J sd0/9Mc1QDz0c7zqRC8YW1Jo+Zof/qKj+F7ISUotsntAv+U5xkE9nPhp0xlypYYGw//5/l ZDpVRwFdb0spyAXGZx3pHsBfCydB45nbE9LhE0J9kleP8jo6TcnDmevkIeLqd6taS6Rkfl d9ROd6QpXaqbOwCofoJ8GG6mEVN70BuTSLGsd7qlKm6qXYrSW5CBhXmnmShgkbdq0bKCzG K58sRCdijvxw+18RQ3f0vNe/odXTJR1//vBJovUnD+7fqWvbJBf6PYiJ/YpfRg== Date: Mon, 1 Jul 2024 11:22:30 +0000 From: "Pankaj Raghav (Samsung)" To: Dave Chinner Cc: willy@infradead.org, chandan.babu@oracle.com, djwong@kernel.org, brauner@kernel.org, akpm@linux-foundation.org, linux-kernel@vger.kernel.org, yang@os.amperecomputing.com, linux-mm@kvack.org, john.g.garry@oracle.com, linux-fsdevel@vger.kernel.org, hare@suse.de, p.raghav@samsung.com, mcgrof@kernel.org, gost.dev@samsung.com, cl@os.amperecomputing.com, linux-xfs@vger.kernel.org, hch@lst.de, Zi Yan Subject: Re: [PATCH v8 06/10] iomap: fix iomap_dio_zero() for fs bs > system page size Message-ID: <20240701112230.st6petb4sf7fs4ks@quentin> References: <20240625114420.719014-1-kernel@pankajraghav.com> <20240625114420.719014-7-kernel@pankajraghav.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspamd-Server: rspam11 X-Rspamd-Queue-Id: 071CD1A001A X-Stat-Signature: 1dsi7rsjfbdy1gp1hnx9nfstcdodmbaa X-Rspam-User: X-HE-Tag: 1719832961-914749 X-HE-Meta: U2FsdGVkX19/MZ5yEeKZynuvo3al3qer2Y2wGqCguHyPCQ5qe3krWbimh7AXdNMEzbsgH5yqp3Xoim5YlOXtTbvsddSKiWW9qp9dqcDs79VP6Z5/jDG0LH3Qr/I28jd7pS7e77xOq7/SiTzXvDOhE0uIc2veeBzft7jYhbrOPJXCiMQ8q6rE8svz6krVyOPuXDpLbummO0EkhKaxQz25F/QjX8vU7mtmpSCr01vksL0OlgwI+q7i5EF8CBqYheXZXTSqw6NkLuD7sdFbw0bt5qWOEPvwW4RqrU37rJmv+cRTEmsbge76ZkTbgCxe5iMx4i+dZnscB4yxvxjgDDezGmBFkITgMSnYc1FkRgMPKUrBGyB9Y7mV+NB9q1wKwBwoBstjZeqAIBS+/b2AOtGfsXaeNygsIIVfE0sq0C9my+z++jiY9O0jmd6pSjePBA83I6XpcEoWwTZhBrbuyUCHDrnAL1yEWTunLAPcsBFZEhjcIXEOAYv1sucVAhAJCXa3rHlFc92z6l8Nn6pgkB3yiQTBmd7UnIJz8EzAC683tmCbb00yMiyeKim+qCUccaeeDB4A/EZBFPoX5YxIM4ZqlnJ5pTyAAQQ2IbjEqGeoFzJvBBdIdQxGd3FsSjEvUrRWrebK/KwL/+UAUnyH/9VRLcuCB9fgjtts7UAFwur8K4Ma6vCJ+Z+WwltTqKwK4RwOk5hCcXMOahDpASTOh4Ntyw5i9szode75VEfsMDP5f2IVDca6I7DrioG9dKidRMul5K+LZcse4sGhdpfQr/EayXMtJkM46dczm4AkZjINxAROrk+ulsDCJFB9AxZ08h2xomgQ3lo+Pr3RW5YgBBIEHDHmbs1OYIEZE6wArpcWI9NDEIeY8MW29WVYajFn1jzKZgQsM4voqkCjwfZGCx5Nfoc96dSdh8GqTj8XSBMLQEmwEkA1JjCntcObICaQ+rmrpNjp4vrm59t3jHz0gjj p31E8wrL eri8BfXXDXapTx3T62RQjeh2SghoBn47Utsf+03yYHsQbpo/REc3lYPKICWDBCSjhSoKHANDFhA6yJkXp5XDeE+hBamkbAQ+IHyZRMhebpu90RgX0UG7G2vdxfHdPjOecmu2zgoJO/3+cUxB4aISQXz0L0WbPBMXzuUdyC4nuN0PoF0+QOrEope7gv/s8VRSLCDl0VVVhvxXIcFKGHIZp6Xf9sfmlQE5SusQqLw8flbzL4MEFaJtTDMxNRNag+/K8f+7HaTlrexVc8f+9aVkQ96oYNuN2yR07z1kdJLbbEIDSljjyIe3E0M3018DHfHS8mV1IGT08fE0KgSss3h2+SnjyuqOkdhtPBNiUsKlgAj9HyIXGlhGh9Gj2OjNv40F9Z+cXX9evqjRUgthqWk8AlOq40A== 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: On Mon, Jul 01, 2024 at 12:37:10PM +1000, Dave Chinner wrote: > On Tue, Jun 25, 2024 at 11:44:16AM +0000, Pankaj Raghav (Samsung) wrote: > > From: Pankaj Raghav > > > > iomap_dio_zero() will pad a fs block with zeroes if the direct IO size > > < fs block size. iomap_dio_zero() has an implicit assumption that fs block > > size < page_size. This is true for most filesystems at the moment. > > > > If the block size > page size, this will send the contents of the page > > next to zero page(as len > PAGE_SIZE) to the underlying block device, > > causing FS corruption. > > > > iomap is a generic infrastructure and it should not make any assumptions > > about the fs block size and the page size of the system. > > > > Signed-off-by: Pankaj Raghav > > Reviewed-by: Hannes Reinecke > > Looks fine, so: > > Reviewed-by: Dave Chinner Thanks! > > but.... > > > + > > + if (!zero_page_64k) > > + return -ENOMEM; > > + > > + set_memory_ro((unsigned long)page_address(zero_page_64k), > > + 1U << ZERO_PAGE_64K_ORDER); > ^^^^^^^^^^^^^^^^^^^^^^^^^ > isn't that just ZERO_PAGE_64K_SIZE? Nope, set_memory_ro takes numbers of pages and not size in bytes :) > > -Dave. > -- > Dave Chinner > david@fromorbit.com