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 08D48C52D7C for ; Thu, 15 Aug 2024 15:01:42 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 706FF6B0119; Thu, 15 Aug 2024 11:01:42 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 6B74D6B011A; Thu, 15 Aug 2024 11:01:42 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 557AA6B011B; Thu, 15 Aug 2024 11:01:42 -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 37FEE6B0119 for ; Thu, 15 Aug 2024 11:01:42 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 841A3A8EE1 for ; Thu, 15 Aug 2024 15:01:39 +0000 (UTC) X-FDA: 82454793918.08.AEC28FA Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.46]) by imf25.hostedemail.com (Postfix) with ESMTP id 38556A006F for ; Thu, 15 Aug 2024 15:01:27 +0000 (UTC) Authentication-Results: imf25.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=SGXFqfRH; spf=pass (imf25.hostedemail.com: domain of alexander.duyck@gmail.com designates 209.85.128.46 as permitted sender) smtp.mailfrom=alexander.duyck@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1723734030; 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=X5A/Pf35dj4E2EpVtARhuhl6tAP8WNgJnMyspcYzO+k=; b=bPZChhliJh/bXIP5iTnUfJexiPk0eDhVzVMC/ay2NG6imSsVEKlA+e+m/9Mhz/+JHEoysG uWaBUzuk/6PBdxdIk0Ts8VhgbDKSo/A1geKncmJCfdBb1ZqOCBH1UzCkfXq9ND5/jDah5Y Pr87X37s/o+rnLlGpj6WDphq5Uc/bHk= ARC-Authentication-Results: i=1; imf25.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=SGXFqfRH; spf=pass (imf25.hostedemail.com: domain of alexander.duyck@gmail.com designates 209.85.128.46 as permitted sender) smtp.mailfrom=alexander.duyck@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1723734030; a=rsa-sha256; cv=none; b=ZS6leys1xvWBFRemKMR5ijykUwt0dxHOB9r8LwNFCqxyGV1uPjqNw2dmqfYR/P5u+rf82Q /wyhSIX+Rd00noSwc3XbdI1DzG2KOSqVFSgdzE5q7pWZ5dxJtMsEtQMY7DXmnEYoPaTnZI I7xw5JoEZpp8ptao5ypfytwYvUeqiqE= Received: by mail-wm1-f46.google.com with SMTP id 5b1f17b1804b1-428243f928fso9683215e9.0 for ; Thu, 15 Aug 2024 08:01:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1723734086; x=1724338886; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=X5A/Pf35dj4E2EpVtARhuhl6tAP8WNgJnMyspcYzO+k=; b=SGXFqfRHNBdmFIrhJeXiWEbVTTlGiu8E3KKBqdF04FJTCRD0t80Fr/KKm24a28Li/e 6t/tCPKOUFBEoOADQFdLMjGtfS/rmf6qP5Oq4tmwUTGl9546h4cEWQrB4Ujty4HtCfhV it4apn5O1RxtdZ6dddA1BWK1yqeQh79f/ETdEC2QnXG5ztKly+ot7dpx4+hEcA7Ni4zF k5qEwspiXtbRnamnNMme4xWdf18VtVPO37oXaSwGWD2FZGPS7RHI7rwIQJFama0u6FSs KiQEnrq1VBAb/y52Ofrhq5ieccNpzKDJn1Qg/2qeUKz0sZYdWHXMJXy4WEmQU52jB6pc P6VA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1723734086; x=1724338886; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=X5A/Pf35dj4E2EpVtARhuhl6tAP8WNgJnMyspcYzO+k=; b=tF8EL3a7IDRegfdQaHN4R1rfinhXCoVkhhE1iZIpYMLu6bEfnia9bde7l6a8nLt7XN oHsjq4UJ+StM7EuHPKkD0W/TuFkEh0MKRdCDLi7+T5dvKt8+/IwrGEfP1NhSm/Q4B8Ph NnfOdvDisOeFtUaOdm+rkVOwsLT6Hj2yg3rT1BFSrj0fUiJNuRauBiYTbeU4UDDjJqkb T32M5buU4JRPrjvC3eWDNSHm7kBbhf954dNjSL/1LfeWnAOEA60iM1T5AxEUgYD41CMT 8HmznxcvpLbBU1X0FzMi2opZwt/MshgFk5G3DQJ6vDXSgDg8PpeZjJ+GGCcF8cDS6x33 ZlLA== X-Forwarded-Encrypted: i=1; AJvYcCX7ob3WRyCVXs/2FILRjjNqveQ0TcQT6mojsQdLkLdpP8cOHK1MTR7BtbFuvfCeYeiNUZXog55mkBpPfrEP6sf1kHo= X-Gm-Message-State: AOJu0Yxj5N5UegFkGtlnRH+62XLChjmx48lu+Gz+wnL/9dpgFbVkZN8y BSN4A+rRaWcUMeYWPt2giV57Ar4oSB6h1T83kPSOBUOus2Bha1sdbz47KAHer6cQNZy2FuXZ1a4 pLv/xexkmtL+1HQNDo1ykEvAvJKM= X-Google-Smtp-Source: AGHT+IFDnpMtbZ2O72JrYtKTcNGdeMRDRFuISj162VcIBgDVR4ZNDcEgvb9oYMQdJ7UgCrLds6/xYlzhvGcrtQXyvpA= X-Received: by 2002:a05:600c:511e:b0:426:59d3:8cae with SMTP id 5b1f17b1804b1-429dd236521mr62262805e9.13.1723734085882; Thu, 15 Aug 2024 08:01:25 -0700 (PDT) MIME-Version: 1.0 References: <20240808123714.462740-1-linyunsheng@huawei.com> <20240808123714.462740-5-linyunsheng@huawei.com> <676a2a15-d390-48a7-a8d7-6e491c89e200@huawei.com> In-Reply-To: <676a2a15-d390-48a7-a8d7-6e491c89e200@huawei.com> From: Alexander Duyck Date: Thu, 15 Aug 2024 08:00:49 -0700 Message-ID: Subject: Re: [PATCH net-next v13 04/14] mm: page_frag: add '_va' suffix to page_frag API To: Yunsheng Lin Cc: davem@davemloft.net, kuba@kernel.org, pabeni@redhat.com, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Subbaraya Sundeep , Chuck Lever , Sagi Grimberg , Jeroen de Borst , Praveen Kaligineedi , Shailend Chand , Eric Dumazet , Tony Nguyen , Przemek Kitszel , Sunil Goutham , Geetha sowjanya , hariprasad , Felix Fietkau , Sean Wang , Mark Lee , Lorenzo Bianconi , Matthias Brugger , AngeloGioacchino Del Regno , Keith Busch , Jens Axboe , Christoph Hellwig , Chaitanya Kulkarni , "Michael S. Tsirkin" , Jason Wang , =?UTF-8?Q?Eugenio_P=C3=A9rez?= , Andrew Morton , Alexei Starovoitov , Daniel Borkmann , Jesper Dangaard Brouer , John Fastabend , Andrii Nakryiko , Martin KaFai Lau , Eduard Zingerman , Song Liu , Yonghong Song , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , David Howells , Marc Dionne , Jeff Layton , Neil Brown , Olga Kornievskaia , Dai Ngo , Tom Talpey , Trond Myklebust , Anna Schumaker , Shuah Khan , intel-wired-lan@lists.osuosl.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-nvme@lists.infradead.org, kvm@vger.kernel.org, virtualization@lists.linux.dev, linux-mm@kvack.org, bpf@vger.kernel.org, linux-afs@lists.infradead.org, linux-nfs@vger.kernel.org, linux-kselftest@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Stat-Signature: gzq6idc8rixo8ya6qkpfg96orz8ghj3r X-Rspam-User: X-Rspamd-Queue-Id: 38556A006F X-Rspamd-Server: rspam02 X-HE-Tag: 1723734087-708728 X-HE-Meta: U2FsdGVkX1+zl+EYI9U4OyZNCQhlUx5UKoN+x2Ih0VVHAYgby8CxNh2xaLY68vZ/gabSS/76QRaa9hvVhkJg7x5PEG9MdAZvR/gVkMEPug0sp2K6DiIxT1xNs//BxWN9bQ4xW/zHY8skZ+Vuugf86BwxQgiUR9gowYFAe+S6YXfQ8zC/57wg8n/EbYK4xwqlh6ToC0CVcsUv03SQ1M8T0xCKHy6fNyRJXGaAdRggkG1B9E8XeXbY0qym+BTlq0OkCD6FUYiB3DY2zhv+TS7xvC2W3PlGP9aiU33kK2paboV7ZwM2nPt47skQ4muFT+DgtAKQ3lHcMNorsi9qGW9icCNeI+3qskScu0PQXIp5JZlnGtxzn5brqlDr2uc3TpDDv7u6QZKv156yHkr+Y5tK9uOLdSJ7ZtTwuh47EljQWKdFS/44PqUf8FYgcwxNJ/FX2pOM/BUzaCXDCHUSz/466DocL8+FHbyGQryPRgyUVouKJdB/VLU5U5czPZslc+9OIX1p0YjitgmkWHDjKa6R2Fpffd37TGTROE7QyIaH8ZYFR6kxVgkl3IZcLO3RhJc+v8VsBnGpTkL+zqAV/bmE8e35EiktTQtuy0jz3wCnidtrWecMu+bm217937ZDjq9LtKJbEaV94LGSI+eiPdyby1bdy4X9wvfh+b42vyKMRQ1c7/jdaZAx8e7aS2UTMlNajlXRUHnkKGjNUE/SmoRubWXemXjKds3O8lLXlNI/FY9O8dXU6K7+NC5A1+68PcYZMIWnva59WWbvmyQHSE0vKApl9SDmWcgio35igF83TBgbURNRy3XdaRMCGCxQTlMZ0eL2ZFtRAAl4RsykrlAIA5/ZzqYxzjmdskJ8jlXZ0SE5FwB+NWvPDlRNBgY551rcqyNg9yx/q7FRVeYjn9uKazy7/KbIAi5meqaZFcHVpjqxpPpd33nLj9ALbh7g+2G5GCfXAP42d0ijMbWaB++ J3x0U6eN NeqSfwLG2K1b/rJq0GFqOlipK1RJdnplP4MQfcD6gu9euSkomDjghMmFX0H118F8+Tzbz9AmpgiJyJ/CfM5T4Rs3HJmu41LaYJjCOxmUx2KFDDu460Fvpl/5miVYtXpSJhOd7KPGHiCeWIy4KiCHpq/BOqm4pzx0RLl5Ux4SjSYEkwbbu4Bx6p0HY1u0kymTMGqEKF0qgdMRTjdqjIFPyAcaOwmsKxokzl9hHpxqNkPigrBPfRSbied4c5lpoyS49gBhb0vO/4PBz8ZQTL59rdP+y+q536SZ6t+6loq8uB++rdt+YcuIyVRqVDrQCd2sQJ1iuoxc48+9Z7wlXlPT7cMnKklZY5jJsP2ghfB8Vr1xndJshtNMXi2p6z7ymolySAUp2sKK75UsreJ1/XoxI6Wh/AkrokAnCDy+c7C29qd9H7KK9tYa5oC09zZGD8T0KEVZVetHZj9A144oZX1U2abl/ePAVhXDsFg+a8DUf7OLdjhSSeMI5pByMyQV2o9CaqBiAocBEPLtjepCNqBuLq3VOQx/yPEkWeN/o 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 Wed, Aug 14, 2024 at 8:00=E2=80=AFPM Yunsheng Lin wrote: > > On 2024/8/14 23:49, Alexander H Duyck wrote: > > On Thu, 2024-08-08 at 20:37 +0800, Yunsheng Lin wrote: > >> Currently the page_frag API is returning 'virtual address' > >> or 'va' when allocing and expecting 'virtual address' or > >> 'va' as input when freeing. > >> > >> As we are about to support new use cases that the caller > >> need to deal with 'struct page' or need to deal with both > >> 'va' and 'struct page'. In order to differentiate the API > >> handling between 'va' and 'struct page', add '_va' suffix > >> to the corresponding API mirroring the page_pool_alloc_va() > >> API of the page_pool. So that callers expecting to deal with > >> va, page or both va and page may call page_frag_alloc_va*, > >> page_frag_alloc_pg*, or page_frag_alloc* API accordingly. > >> > >> CC: Alexander Duyck > >> Signed-off-by: Yunsheng Lin > >> Reviewed-by: Subbaraya Sundeep > >> Acked-by: Chuck Lever > >> Acked-by: Sagi Grimberg > >> --- > >> drivers/net/ethernet/google/gve/gve_rx.c | 4 ++-- > >> drivers/net/ethernet/intel/ice/ice_txrx.c | 2 +- > >> drivers/net/ethernet/intel/ice/ice_txrx.h | 2 +- > >> drivers/net/ethernet/intel/ice/ice_txrx_lib.c | 2 +- > >> .../net/ethernet/intel/ixgbevf/ixgbevf_main.c | 4 ++-- > >> .../marvell/octeontx2/nic/otx2_common.c | 2 +- > >> drivers/net/ethernet/mediatek/mtk_wed_wo.c | 4 ++-- > >> drivers/nvme/host/tcp.c | 8 +++---- > >> drivers/nvme/target/tcp.c | 22 +++++++++---------= - > >> drivers/vhost/net.c | 6 ++--- > >> include/linux/page_frag_cache.h | 21 +++++++++--------- > >> include/linux/skbuff.h | 2 +- > >> kernel/bpf/cpumap.c | 2 +- > >> mm/page_frag_cache.c | 12 +++++----- > >> net/core/skbuff.c | 16 +++++++------- > >> net/core/xdp.c | 2 +- > >> net/rxrpc/txbuf.c | 15 +++++++------ > >> net/sunrpc/svcsock.c | 6 ++--- > >> .../selftests/mm/page_frag/page_frag_test.c | 13 ++++++----- > >> 19 files changed, 75 insertions(+), 70 deletions(-) > >> > > > > I still say no to this patch. It is an unnecessary name change and adds > > no value. If you insist on this patch I will reject the set every time. > > > > The fact is it is polluting the git history and just makes things > > harder to maintain without adding any value as you aren't changing what > > the function does and there is no need for this. In addition it just > > I guess I have to disagree with the above 'no need for this' part for > now, as mentioned in [1]: > > "There are three types of API as proposed in this patchset instead of > two types of API: > 1. page_frag_alloc_va() returns [va]. > 2. page_frag_alloc_pg() returns [page, offset]. > 3. page_frag_alloc() returns [va] & [page, offset]. > > You seemed to miss that we need a third naming for the type 3 API. > Do you see type 3 API as a valid API? if yes, what naming are you > suggesting for it? if no, why it is not a valid API?" I didn't. I just don't see the point in pushing out the existing API to support that. In reality 2 and 3 are redundant. You probably only need 3. Like I mentioned earlier you can essentially just pass a page_frag via pointer to the function. With that you could also look at just returning a virtual address as well if you insist on having something that returns all of the above. No point in having 2 and 3 be seperate functions. I am going to nack this patch set if you insist on this pointless renaming. The fact is it is just adding noise that adds no value.