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 AD11EC54755 for ; Fri, 16 May 2025 10:11:26 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9CBC56B012C; Fri, 16 May 2025 06:11:23 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 8E0C06B012E; Fri, 16 May 2025 06:11:23 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 718EB6B012F; Fri, 16 May 2025 06:11:23 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 47EB06B012C for ; Fri, 16 May 2025 06:11:23 -0400 (EDT) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 197AD81D41 for ; Fri, 16 May 2025 10:11:24 +0000 (UTC) X-FDA: 83448353688.14.18B2EEC Received: from mout-p-103.mailbox.org (mout-p-103.mailbox.org [80.241.56.161]) by imf14.hostedemail.com (Postfix) with ESMTP id 6E149100011 for ; Fri, 16 May 2025 10:11:22 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=samsung.com (policy=none); spf=pass (imf14.hostedemail.com: domain of kernel@pankajraghav.com designates 80.241.56.161 as permitted sender) smtp.mailfrom=kernel@pankajraghav.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1747390282; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=fEM2mvEJ1yynuNJKhsSa17dt4McOR+sHdA9EoUJmmJc=; b=USTopxd9dIj4/JyDp+PRUG8hSA8wvVOHLfHmGcns5R4IBI5VKY9sF4Tx6qL/3bozIEis0L 0AIh8XrlfUNImIDFbHD9ZbWfVN9Tlbon+R9JFDnA48ATOntEMaXQyRJydmtctPm/FNTf4X wb9YPvwERMxWQUDMbAOvJZ9TToJqRok= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=samsung.com (policy=none); spf=pass (imf14.hostedemail.com: domain of kernel@pankajraghav.com designates 80.241.56.161 as permitted sender) smtp.mailfrom=kernel@pankajraghav.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1747390282; a=rsa-sha256; cv=none; b=OZh+1QC8pOlPM4kdRpoLkxJ1qyLsLSpv6r+we9HngBTkgRyjNhyvdDE4B76YF+VOtDFErr yi9g5FCHt5sZDH+YLlxUM3Cu+53mWCVPp+kfgl1O1aANIvuNIsl/XL7QuVLFM3vkxua1qB camO9kVCEKaA31abtLzigG3vMU2ErDw= Received: from smtp1.mailbox.org (smtp1.mailbox.org [IPv6:2001:67c:2050:b231:465::1]) (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-103.mailbox.org (Postfix) with ESMTPS id 4ZzNCC150Mz9ssM; Fri, 16 May 2025 12:11:19 +0200 (CEST) From: Pankaj Raghav To: "Darrick J . Wong" , hch@lst.de, willy@infradead.org Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, David Hildenbrand , linux-fsdevel@vger.kernel.org, mcgrof@kernel.org, gost.dev@samsung.com, Andrew Morton , kernel@pankajraghav.com, Pankaj Raghav Subject: [RFC 2/3] block: use LARGE_ZERO_PAGE in __blkdev_issue_zero_pages() Date: Fri, 16 May 2025 12:10:53 +0200 Message-ID: <20250516101054.676046-3-p.raghav@samsung.com> In-Reply-To: <20250516101054.676046-1-p.raghav@samsung.com> References: <20250516101054.676046-1-p.raghav@samsung.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6E149100011 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: iwt8dfkczye67jahp78ipktydrintohs X-HE-Tag: 1747390282-536122 X-HE-Meta: U2FsdGVkX1/lf7s48o7vh6aWtvpsnQSrT64vd2hJpDZb7dI7Pd1PJIxmbHlKMF6pO2wtjL6ccEod3PAhFe+UgZaDNq95BAfVkTY7aPl0jl4H4BLfvOT69ogAW+UHD5vDP4u2J9sSg6URZJF0D3PvBFRo3iGt2n6i1EDyuaWSXno0VEWV7UQVTl1Iez4bP09jR5PF7KWzJrCOpZmVTRD69fAvPqc0t6ZlQoYyfdFpd/L0yrMg8e2IVRwhoA2s2V0XWitUZtsCoxztHFBgUpCXmH+/JtWQxc5XaZo8SThmBjPKx4gPj8w1zwHGkOOcxHwoAlH5CGboJPAZmmtJkxnOcakGehLT4g6d5Tz5EV3tER38rVOuELq6PhEupxFNn5syOcnrD1UjZa2xRl7yD/t+SxeJBrfzb2K9iR/LUhuBfriVr1QNLLfrXSNvZB7G8+mMa1jRhfTYyPP5bugSRiCIerFhqFGT92V8a671TLjBcR3VNZDTdHIc+GBr8zr/CYwVfETjNbSZs9uaI5AeP1Y/N1ah/IGEsm9s8mt1uk36MjJfrKGtJVB5Nf8JdlOqpaO8mh7JpuIXkdc0TISVQEZh+GsruVI556j7KFA3/dFSEgE51o/Als7edho5I+/3z0vs10TWNvWU6mHhIcNSWwq0kVJ9QZrMsdJDBcsazJxmhyQ3LDfqzNUFv96436Kb6X3IONT2GjjPZ6Ou6EgGZExMZu1Me9d4LbzaHA2LFYe9pu0cMKSRMB5XusjYwrcEhcHhWRSFozzJyj/uvTgdSZnNaJfiA6vbkQ6HHYH+EmkooikIj1rasaPiB+fsMkOwbfQr/5Gm7RnCbnku6tJSrZkG6pAM3tdRM1K4PCW2rw7QwFAFjsSNmKEgc5uASLm7i7VJcpMFk2ciMeoPV8hn59diJhMGAPNhpjnky7bkd59wTMyjZ896mOyZ7gTGbyItzTYKO2iUV6P3XKqv5v1nLnp nNi7kwTj cznJ4MCzBx+vamp3W9EG0HuJkgvSwi3lFxw7PNi++1NX/1m4QAXf/D5kfSuFcDBJR/gydIRH7u2jbOZ0C8esVejdPKWSfsGYtxI8DFS96dH04ijFL7WPk6opNKZsTmLrtZascGMYq24cDnERuQKkjRFc7zYjBKRlrb7iUWP8Q6NJNhVJgxdyr9wz6LfvrEhqt/BI38/bKVsEYCzccIfUvHdAVghY5XMqcJD9h5ucgSl0ckBvUgem+Y7eVVQGMf7PkUAKMjXo0B3QbkRTeHKLkoZggp9zX2diOmQSffa02/hm8MF6n7OMZ39PB8NkDaOawc2Rvj8JObg1InIakDP0XCZifgiNLthRizeAebrootxPCvJ2RpiYm1X2rU651N9+4B/n3ss7Jwx8JtL3aHek0hsc3AZld2nBXw8kp 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: Use LARGE_ZERO_PAGE in __blkdev_issue_zero_pages() instead of ZERO_PAGE. On systems that support LARGE_ZERO_PAGE, we will end up sending larger bvecs instead of multiple small ones. Noticed a 4% increase in performance on a commercial NVMe SSD which does not support OP_WRITE_ZEROES. The performance gains might be bigger if the device supports larger MDTS. Signed-off-by: Pankaj Raghav --- block/blk-lib.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/block/blk-lib.c b/block/blk-lib.c index 4c9f20a689f7..80dfc737d1f6 100644 --- a/block/blk-lib.c +++ b/block/blk-lib.c @@ -211,8 +211,8 @@ static void __blkdev_issue_zero_pages(struct block_device *bdev, unsigned int len, added; len = min_t(sector_t, - PAGE_SIZE, nr_sects << SECTOR_SHIFT); - added = bio_add_page(bio, ZERO_PAGE(0), len, 0); + ZERO_LARGE_PAGE_SIZE, nr_sects << SECTOR_SHIFT); + added = bio_add_page(bio, ZERO_LARGE_PAGE(0), len, 0); if (added < len) break; nr_sects -= added >> SECTOR_SHIFT; -- 2.47.2