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 70BC2C197A0 for ; Thu, 16 Nov 2023 15:58:29 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id CD4D06B00A5; Thu, 16 Nov 2023 10:58:28 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id C85426B0474; Thu, 16 Nov 2023 10:58:28 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B4DA36B0475; Thu, 16 Nov 2023 10:58:28 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id A8C046B00A5 for ; Thu, 16 Nov 2023 10:58:28 -0500 (EST) Received: from smtpin17.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 72F8E120C12 for ; Thu, 16 Nov 2023 15:58:28 +0000 (UTC) X-FDA: 81464274696.17.A52F9CC Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by imf20.hostedemail.com (Postfix) with ESMTP id 97A801C000E for ; Thu, 16 Nov 2023 15:58:26 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=GFvO8ncP; spf=pass (imf20.hostedemail.com: domain of dsahern@kernel.org designates 145.40.68.75 as permitted sender) smtp.mailfrom=dsahern@kernel.org; dmarc=pass (policy=none) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1700150306; 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=39/Cwpw9xqTQXNF+iJS/58pDXp6dfCst4nrixe5CkBs=; b=TnCEY3K02O+YESNSOQNG9RWR35uWohS0NsOOi3mjOYpZP0rbcIzbkvWxF+bzweOmCgKfd1 K3AWL0fCY3lZ8aVFnTFU1Ds1gUA325+M6Pmoq68bVg4ZloMyu78YvGS8nz2VkJc3qou9vO TQ8U5p9wHG06PRm0QNrcEhIpru2tt78= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1700150306; a=rsa-sha256; cv=none; b=jaMmQ1fGXXqS32odM1+QL0KGqxfBc+7NTtiptsiM/eWdNarEdT5P/Ab3fk7XgyXXisB2jG 18Lb79dMQkfMDN/lcpDJoJCGF7l31DSVpFHxGETu8YLJLaw5E2ky69E2Nl9FHtLU1VGe28 P6e7JW2Qzw5G0kUrNnv3vA94VxwxZRg= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=GFvO8ncP; spf=pass (imf20.hostedemail.com: domain of dsahern@kernel.org designates 145.40.68.75 as permitted sender) smtp.mailfrom=dsahern@kernel.org; dmarc=pass (policy=none) header.from=kernel.org Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by ams.source.kernel.org (Postfix) with ESMTP id 83B02B81DBA; Thu, 16 Nov 2023 15:58:24 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 112C7C433C7; Thu, 16 Nov 2023 15:58:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1700150303; bh=B68vNXPafDpm5CGgjZh28GWJpryYr4kJVI5IqZmIOAU=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=GFvO8ncPeCB+lYOze6sJv8uYgYrc9blZ3UiA0uep+7xQ2BwuoBD9W63q0cffxkm7Y e2IFtKODsXXF/nfRcpEPscQnmZcKaTjFooJla+oTpYGw+EjYxzwZiv+Mn5e4cMQjNk wROQl+4KJEt21jcR//JgHbxloe2hUv+qDnSJZdituWiSnqD53DlAdo8lwFqhanvK3L BHSC+PciRYHpIvXq0nmJYz/yvU43H+m/ggR/A6z1v8RZ0fWJeqEkNRhsuXFf0+Z08U zfjKHNribL13+mTts2dPjHah84UMvWeg/HlIol5LmaA6JewtFss3T4f7DTWrPz9QVG afP8J6PpE0s4w== Message-ID: Date: Thu, 16 Nov 2023 08:58:22 -0700 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH RFC 3/8] memory-provider: dmabuf devmem memory provider Content-Language: en-US To: Yunsheng Lin , Jason Gunthorpe , Mina Almasry Cc: Jakub Kicinski , davem@davemloft.net, pabeni@redhat.com, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Willem de Bruijn , Kaiyuan Zhang , Jesper Dangaard Brouer , Ilias Apalodimas , Eric Dumazet , =?UTF-8?Q?Christian_K=C3=B6nig?= , Matthew Wilcox , Linux-MM References: <20231113130041.58124-1-linyunsheng@huawei.com> <20231113130041.58124-4-linyunsheng@huawei.com> <20231113180554.1d1c6b1a@kernel.org> <0c39bd57-5d67-3255-9da2-3f3194ee5a66@huawei.com> <15c404e4-8efa-cc1c-174f-0752005b6755@huawei.com> From: David Ahern In-Reply-To: <15c404e4-8efa-cc1c-174f-0752005b6755@huawei.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Stat-Signature: dxxn68z6xh6eyb45nrx5css3kjqgk9nx X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 97A801C000E X-Rspam-User: X-HE-Tag: 1700150306-336456 X-HE-Meta: U2FsdGVkX1+2UXvejRRQ3kKjPm7umXIrWgyLQ4WC5IwppjhxRT0eY3F/8AeuDLuoHaZL4V/O3Hh06a+pZdNlsbZ488tzEXDJp43Mzk+55mC2kUtPymH63+3rGeg1sZ6yD+H9W8a7ES+AK+jOunvaEubPpl+JTgftAN8l42Q80elRbdLaLcNB4C7EO16BPpBUnkwZ9zqSnbMDQyzG9gLnsELt6sW9gvBhibNfshhBJJERFqKuVcrh56BSJ2BhZxD/HbGDTM5vmXyac7R+q5vhLfxmTB9DsQGWY250+KkQDazNEvMboXXSOQNX3zfhlZoKNTgacXVrq+2l2m0/fSRS7JezJ3+Dp60YAWjMmEsppd+aK03Pw3JY+w3AnHbsf24qhL4T0echfp4A6/g/W3buJqDJ1BjdFJXcyzsiFJSkyHLM9MJS0oOagkFMliULeHyFUAe/q7iQVJxlLoKPKhdjlscPKYSl5gav6XTshA1+jaVIrqsaCodoSZ5w0lW4+P5EkXVUiTaL4+6zHbT3vx3fMljWjmJdlfdRTmWpcW9Xqp90ZeCWa0vnIdkC5VLTOxnNWqrQjRPXk/hA56ujNIP7fH/2qpMwWgRdHnpO7yMF6Dm5iWw8XxNJ/Ah1uhx3lOJliQWbvke7kil55/n/R+wefYIm5+guBLuQnoAvRm8aS9z0Bgl7J9epofcuxpQOfwo3kBnOl5gk/qTiEcnj0z0uRIHR+HXmZ4opUNJhCYxJzEBExKehnoixwWBhjPL7+Y/l7jF8M3OU1Iyxv+lzLFgGFbVLMAih1XY3AQOHcTy4pJPV3RdXuZ50M4wXydB8LXm6wqVKv/vH+FKwFea+QLV6WCIICIrKai5Bl6tdTW69LueGQovrdSyFKvbGPhfcg9t+Ur9MKCfNcQ3b01WweJ48hxDdQCvlq+MP8Bl+xN3CaOi9fDrt+WpS1ixvIGxXHIHQjIPkS8BYeb+Yg2Wft0x pd4fq4H2 zpTvoZSnvM6V218DI78+1pHd76OYdsEhIsuVc9A0tv8EasgGtV0umxuateK4GAMpnqlmaXNBDJxcqpFeFnWlY0H+EHjfX8pazdrAFFcAtacF3in2IK6TQIPj4M2uZbArF526RLjrXclXlOR0aWSNI8289YygRSHJuxErLdzr9F1AQBh8yAD8A/oJyNaXe0wsgP8DAfBki6OKISPuSvqp/7wn2TZLOHa/M8SYIMkGWPneqXrbz4bYHCl0seMR4gTjwNNWw+htw8n8wGexXL6wWQJiMFZsGcsTxlj+9Sia9rQX5MMoVCgFcj34OCw== 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 11/16/23 4:12 AM, Yunsheng Lin wrote: > On 2023/11/16 1:57, David Ahern wrote: >> On 11/15/23 2:21 AM, Yunsheng Lin wrote: >>> On 2023/11/14 21:16, Jason Gunthorpe wrote: >>>> On Tue, Nov 14, 2023 at 04:21:26AM -0800, Mina Almasry wrote: >>>> >>>>> Actually because you put the 'strtuct page for devmem' in >>>>> skb->bv_frag, the net stack will grab the 'struct page' for devmem >>>>> using skb_frag_page() then call things like page_address(), kmap, >>>>> get_page, put_page, etc, etc, etc. >>>> >>>> Yikes, please no. If net has its own struct page look alike it has to >>>> stay entirely inside net. A non-mm owned struct page should not be >>>> passed into mm calls. It is just way too hacky to be seriously >>>> considered :( >>> >>> Yes, that is something this patchset is trying to do, defining its own >>> struct page look alike for page pool to support devmem. >>> >> >> Networking needs to be able to move away from struct page references. >> The devmem and host memory for Rx use cases do not need to be page based. > > Yes, I am agreed the ultimate goal is to move away from struct page > references. But I am not sure if we can do it right away as there > still are different types of existing 'struct page' in the netstack, > see: > > https://lore.kernel.org/all/8b7d25eb-1f10-3e37-8753-92b42da3fb34@huawei.com/ yes, that is the point of a blended approach -- pages and buffers (or iov) -- leveraging the LSB of the address. That proposal is the right direction to be moving for co-existence. Adding fake struct page instances is the wrong direction.