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 740D0C5B543 for ; Tue, 10 Jun 2025 13:37:20 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id CBD8D6B008C; Tue, 10 Jun 2025 09:37:19 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C96516B0092; Tue, 10 Jun 2025 09:37:19 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B85C36B0095; Tue, 10 Jun 2025 09:37:19 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 9924F6B008C for ; Tue, 10 Jun 2025 09:37:19 -0400 (EDT) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 49EAF1A03A3 for ; Tue, 10 Jun 2025 13:37:19 +0000 (UTC) X-FDA: 83539592598.05.D82843A Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) by imf15.hostedemail.com (Postfix) with ESMTP id A38B1A0013 for ; Tue, 10 Jun 2025 13:37:17 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=infradead.org header.s=bombadil.20210309 header.b="Chl/Ylha"; spf=none (imf15.hostedemail.com: domain of BATV+631296521f62fa6b3e9f+7961+infradead.org+hch@bombadil.srs.infradead.org has no SPF policy when checking 198.137.202.133) smtp.mailfrom=BATV+631296521f62fa6b3e9f+7961+infradead.org+hch@bombadil.srs.infradead.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1749562637; 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=1NzR2rxPnpJMPP1YD7GZH2AVOTPhR96TImD7BWPOQN8=; b=74bGftBYlQlQ8STIGt7xgTGEeqR9SMVO3XF/AzJx1K0LTHMUUkGrHIyQKQgMLZT66+1T33 qhh7NgDsi3YxWXUzSST/JfRfXQ0jdk+IhZPSDDPX0QCc6OrwPpqV3WieXJovo/HuMO8dxF J8YMbc99JnIHGUccCLTWmPm6nKNlh5A= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=pass header.d=infradead.org header.s=bombadil.20210309 header.b="Chl/Ylha"; spf=none (imf15.hostedemail.com: domain of BATV+631296521f62fa6b3e9f+7961+infradead.org+hch@bombadil.srs.infradead.org has no SPF policy when checking 198.137.202.133) smtp.mailfrom=BATV+631296521f62fa6b3e9f+7961+infradead.org+hch@bombadil.srs.infradead.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1749562637; a=rsa-sha256; cv=none; b=WMhftWMvXW0OT+Vo3+3rmgPiPoBzOD5DYini4F4Y27ob45U61NUbTVYI+TcOyCpumjiwlw nyaRduR4eZqB/b52+cscIdGwO+WJ4zNIJ2/6ZI0by1U9kSt0ImLZcxtTEBFquUYetSMJri a1MN6NAoYECssgT7XK2iIZk0545xdVE= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=In-Reply-To:Content-Transfer-Encoding :Content-Type:MIME-Version:References:Message-ID:Subject:Cc:To:From:Date: Sender:Reply-To:Content-ID:Content-Description; bh=1NzR2rxPnpJMPP1YD7GZH2AVOTPhR96TImD7BWPOQN8=; b=Chl/YlhauFGOETLTvPnRnWBjfy opTuncHILIemQPoRR7xSy319pBTxdofO0pGDv6D+Z/u0Nvp5k9X1CFLysi57iB8hf1EwyZE8JtVKb qg2JLB0m1lye2E0nK2XnmciBR+kXGD0YalsfOrzvgwKrdrjuoIwYZ6x7SmRmeJ86S7lve2d5YL26Z ifNFah2Z6Azx4cfPkthqawLP44c8oSJugAVCgkX8HHVhlvtAtNPrTZMb1+c2OA9EEWE/ZGBmSncza GqrystEeMZHiuD/pdlwvBhq4XCRj+bXeudUZP8ZhrYZisNgT95QfAqx82riWKQMfAXy6sPama9g4a UDyzxdgQ==; Received: from hch by bombadil.infradead.org with local (Exim 4.98.2 #2 (Red Hat Linux)) id 1uOzA5-00000006zyQ-1iAC; Tue, 10 Jun 2025 13:37:09 +0000 Date: Tue, 10 Jun 2025 06:37:09 -0700 From: Christoph Hellwig To: Christian =?iso-8859-1?Q?K=F6nig?= Cc: wangtao , Christoph Hellwig , "sumit.semwal@linaro.org" , "kraxel@redhat.com" , "vivek.kasireddy@intel.com" , "viro@zeniv.linux.org.uk" , "brauner@kernel.org" , "hughd@google.com" , "akpm@linux-foundation.org" , "amir73il@gmail.com" , "benjamin.gaignard@collabora.com" , "Brian.Starkey@arm.com" , "jstultz@google.com" , "tjmercier@google.com" , "jack@suse.cz" , "baolin.wang@linux.alibaba.com" , "linux-media@vger.kernel.org" , "dri-devel@lists.freedesktop.org" , "linaro-mm-sig@lists.linaro.org" , "linux-kernel@vger.kernel.org" , "linux-fsdevel@vger.kernel.org" , "linux-mm@kvack.org" , "wangbintian(BintianWang)" , yipengxiang , liulu 00013167 , hanfeng 00012985 Subject: Re: [PATCH v4 0/4] Implement dmabuf direct I/O via copy_file_range Message-ID: References: <20250603095245.17478-1-tao.wangtao@honor.com> <09c8fb7c-a337-4813-9f44-3a538c4ee8b1@amd.com> <5d36abace6bf492aadd847f0fabc38be@honor.com> <761986ec0f404856b6f21c3feca67012@honor.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html X-Rspamd-Queue-Id: A38B1A0013 X-Stat-Signature: ha9px58dfiqusou33prt54incku8k4cx X-Rspam-User: X-Rspamd-Server: rspam07 X-HE-Tag: 1749562637-736416 X-HE-Meta: U2FsdGVkX19vHyf3zhJgmvd2+RDiclP85+YQoPDGSQYrDPpRfHDD/7Ngyh8cfLnvUaMnFvXzxY4ood8LN/DhbmOLN60n/pjXDM7Nnzt+K76J+P1VEGcTeIAAph+CH3wH0w3kjgT/IzR8w/zxFvp8NLl8hO2fbr0RLTx3+obYbUH/wAOANcrcBehJ0UiepQa4OAt0uuLQtVWHW/O5fgy+fcZNaCFgvOzN4AxcQF4CtwVLJ+A6/cxop8Tl0+3oBsuugnjOUHwSuwdeOxjnGChsprdtXI+bd3SSwtMxKdHafROvzJzCwMgDHSLLLSfBmlOF44pzX0zuCN6dgw1TtFh1IhDMW+fFE20+iX/OsoMZkv/VhA+2280VwWkLNjlfb+1HjCDDoSpfsD+fvPFTbs9xxaDAuJRGt93nu1nlpX6rMLBmIsQN89kqjkjRJPx7fQuVnebzZbRakz71HsjFU3MQsV3u/tY241JhpV09dTwqCYJDYpZXrp6wKpKl3BERmkxg0MiYhIHOj4nF/H1dSegvqt79MC6kYbaMWgY0yGyIiSJUa/kyvFoyb6YnOyJgbFKYUs8A6Iqh2z/hMp8vvQSh9YIQkKGjgobA1Tc+ZopUb4LnUmhx6hsrP6aA1vfBvxMWyHGWyUT2wfaBJJKkpkxR+klqdvj9zMs7hGzBa2jUAXW3uOjOUNy0/VX5+PlbMo2CCAhiR9X4BcN1RsogMAaiZCmcXFoyedGAAKxCyyX3r9A1GQkg5DRJF4Mm2TMTKQAXTCSw0d+pk7PHCD6eaW9BdvTcpjvtRtPtiaOvV6Om/jSFpLABd4oOERt932z6Ng3YvHjK+RAsWj0ZiLT6XxCf8C67YfY1IeGU85A5y3d3zPO6yA3BSt1ZZwdb08u1CyZLFgTmC39UUqI9sTnjTHmyRBKXulMOLpCmPRs6LdD2vXy6I5QWbaZ5IUzVa0w6giLmPepsy/rwnjmtbSC5Kdw iBm1WksF W5SijxAjvq8gprwIL4EoysFOsfw1SFJrUFSdDH1obTrRqAXuMrLLiR4G6Rzl9zwkvT/zK4d4GFWOirCoL3756D57CgTWjMnqVqTOzLT41125C6XNLMsjkWH39Y98GuF37Wwgy3zkt4XV7T2QyHdXQ28Q8wogfvJzhh6WdfDYxx7nILLsQqa5zh64bucBRGM8jWQrOppTkApvtcKQTlJ5LUMIRXktyfzdM86HUFBcGu/9NW+8EciE8Ik+gv8E+XwLiu3KBJ3/c5s+jFbBy1d7fvDcn4eV+Ukr3bANsbHGBZa6PyaFE9fDsdsq02sbG/w/mqET2TkGG9H6lag/rSTzqxDzArX/j20y82Xkh7D/8tyPpoQT2SHAbFLmJHhI+9LhwgAYSKACQ1a/uKGGeMoOKciGuzBVhh2NovuQkLRTNWsllEuHu2Z4mifMpjRGaAi9FaqEMYP+IDS5brk+7JGDg/qYeEFRdzt24+QaZwne2lX0C2z8HwbmkfRK8q5zARJwLjFZfYNIRmvM3DDdg3gvWu2j29+/1vi3UoFn6r0D1SOSHptJ1D1UWEw2tqU9JixNci0sXiRzKC/oGjwPmxMYEA0/uEQ== 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 Tue, Jun 10, 2025 at 12:52:18PM +0200, Christian König wrote: > >> dma_addr_t/len array now that the new DMA API supporting that has been > >> merged. Is there any chance the dma-buf maintainers could start to kick this > >> off? I'm of course happy to assist. > > Work on that is already underway for some time. > > Most GPU drivers already do sg_table -> DMA array conversion, I need > to push on the remaining to clean up. Do you have a pointer? > >> Yes, that's really puzzling and should be addressed first. > > With high CPU performance (e.g., 3GHz), GUP (get_user_pages) overhead > > is relatively low (observed in 3GHz tests). > > Even on a low end CPU walking the page tables and grabbing references > shouldn't be that much of an overhead. Yes. > > There must be some reason why you see so much CPU overhead. E.g. > compound pages are broken up or similar which should not happen in > the first place. pin_user_pages outputs an array of PAGE_SIZE (modulo offset and shorter last length) array strut pages unfortunately. The block direct I/O code has grown code to reassemble folios from them fairly recently which did speed up some workloads. Is this test using the block device or iomap direct I/O code? What kernel version is it run on?