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 CB295C54F30 for ; Wed, 28 May 2025 02:29:55 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EAC336B009B; Tue, 27 May 2025 22:29:32 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E5FAC6B00A2; Tue, 27 May 2025 22:29:32 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9ECC76B009B; Tue, 27 May 2025 22:29:32 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 7F9456B009E for ; Tue, 27 May 2025 22:29:32 -0400 (EDT) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 142391A1D64 for ; Wed, 28 May 2025 02:29:32 +0000 (UTC) X-FDA: 83490735384.14.5BF38F5 Received: from invmail4.hynix.com (exvmail4.skhynix.com [166.125.252.92]) by imf05.hostedemail.com (Postfix) with ESMTP id 3CACA100004 for ; Wed, 28 May 2025 02:29:29 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=none; dmarc=none; spf=pass (imf05.hostedemail.com: domain of byungchul@sk.com designates 166.125.252.92 as permitted sender) smtp.mailfrom=byungchul@sk.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1748399370; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:content-type: content-transfer-encoding:in-reply-to:in-reply-to: references:references; bh=VxFmzvmb8ZmdnYbBdwawpzAd5byY0LV0DGlFo0OpCL0=; b=g08yc8i/7TZ4fAomYEHjkFAjROGISZnWNMoN/Vr5cJbUHq2rbL8WXoC562pb7u6I2bxOVp Ew6Dz47WAzLRj6ni0vBtdxJWMhGgiu/fIAt7TN7o5TjfAI4n7/2qdr7f8I3eJNFtJFX/vt muqfpffnhKsH66cdmCvhRaSv4hz2Cqs= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1748399370; a=rsa-sha256; cv=none; b=wl1Q3QnfMcj94eWbvHqIa1axSRbm3i1oaHRjJL04USn5I/aW36dZpR2LU/PIVrSEGhtd8Z nWyD6nnSvH27Lvn64Fkgl3l1w7+dKvFGeyKRCdDU+7+GAlGlnizL+zyRoZFtqn6W9l5Q4g qtpO9eyOfw9j0DLtP2jfIcKi53YVz50= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=none; dmarc=none; spf=pass (imf05.hostedemail.com: domain of byungchul@sk.com designates 166.125.252.92 as permitted sender) smtp.mailfrom=byungchul@sk.com X-AuditID: a67dfc5b-669ff7000002311f-91-68367502f54e From: Byungchul Park To: willy@infradead.org, netdev@vger.kernel.org Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, kernel_team@skhynix.com, kuba@kernel.org, almasrymina@google.com, ilias.apalodimas@linaro.org, harry.yoo@oracle.com, hawk@kernel.org, akpm@linux-foundation.org, davem@davemloft.net, john.fastabend@gmail.com, andrew+netdev@lunn.ch, asml.silence@gmail.com, toke@redhat.com, tariqt@nvidia.com, edumazet@google.com, pabeni@redhat.com, saeedm@nvidia.com, leon@kernel.org, ast@kernel.org, daniel@iogearbox.net, david@redhat.com, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org, surenb@google.com, mhocko@suse.com, horms@kernel.org, linux-rdma@vger.kernel.org, bpf@vger.kernel.org, vishal.moola@gmail.com Subject: [PATCH v2 12/16] netmem: use _Generic to cover const casting for page_to_netmem() Date: Wed, 28 May 2025 11:29:07 +0900 Message-Id: <20250528022911.73453-13-byungchul@sk.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20250528022911.73453-1-byungchul@sk.com> References: <20250528022911.73453-1-byungchul@sk.com> X-Brightmail-Tracker: H4sIAAAAAAAAAzWRa0hTcRiH+++cnXMcrk5L9JRiuBBJ8YqX94OYEuX/W0FfwgodenDDOWVT 80KgJlSadofQhVPJO82W6DQx7xcMlJmxyutEMzBFl0udZM7y28Pzg4cXXoaQ9JNnGIUqg1er ZEopJSJFP52r/QWZ4fKgit/uoNU3U9C0nQ1180YhaBvbEPza+UaDdWCYgpoqGwHa8SIStvS7 BCwNWWiYq10moeteOwGWRyMUlBbZCSg01gtgoq1MCM93XxPQnj9Pw2SnloLZ5n0hLPeVkjBa 3kDCXFk0DOlcwTa2imBA3y4A28NXFDwz6ShYLJpDYOq3kFBRUIZA320Wgn1bS0V74daGLwLc UT5DY50hE7+r98XFZhOBDY0PKGzYfErj6c9dFB55aSdxh9EqwKV31yi8sfSVxOvdUxTWt06R +KNugMZWg+dVNk4UmcQrFVm8OjAqQSTXLdbS6V1MtnE7Lx+V0MXIieHYUK5xuIc64h3T9KGn WB/ObN4hHOzCBnNWyzBZjEQMwa4JuSWtXeAYTrFxXMdCJelgkvXmXvS8OQyJ2XBuYfQH8S96 lmtq6TlghnE68IPTiQ4tYcO49RI9cjQ5doPm9sdm/x90muutN5OPkViHjjUiiUKVlSpTKEMD 5DkqRXZAYlqqAR28tvbO3g0j2py41odYBkmdxbglTC4RyrI0Oal9iGMIqYu48EK4XCJOkuXk 8uq0eHWmktf0IXeGlLqJQ2y3kyRssiyDT+H5dF59tAoYpzP5yOtt7Gq1WXY+5lxZlac67nqe JmHeb6s9pmZf9MlgaXLamWze9Xj/XVByZfySG8Pf6m0LnYjIjUgJsV/MKg9l/zwRriumwqxu lQpbmp93YPzsXnKCyD/Q5+Rl907xUFBk63HXzYIP2zODBdaUwMiolbqWtZvKpPvy2OCJlfAT ix5SUiOXBfsSao3sLz/oPL7WAgAA X-Brightmail-Tracker: H4sIAAAAAAAAAzXRa0hTYRwG8N6ds7PjcHFcUiejglFESpqR8o/K/OZLlBpR2cB06MENndqm oqU0dRFpajdLbNZMMq9NTNwsb8w7CommLTXnBTWj1NRsNqFc0bcfzwPPl4cmxKWkG62ITeBU sbIYCSUkhYHHMw/xEn3lh1c/bAWdoYqCSlsyvJww8UFXUY9gdX1UACvtXRSUFK8RoHunJeGH 4RcBM51TArCWzpLQeMtIwFReNwU5WjsBGaYyHrQV9fChvz6XDw9/vSDAqJkQwOAbHQXjVb/5 MGvOIaGnsJwEa64/dOq3w1rvVwTtBiMP1u4UUfBgQE/BtNaKYKBtioQn6bkIDM0WPthtOspf guvKP/JwQ+EnAdbXJuLXZe44yzJA4NqK2xSuXb4vwGPDjRTuLrCTuMG0wsM5mQsU/j4zQuLF 5iEKl3xe4mFD3RCJ+/TtgmAXqfBEJBejSOJUXn7hQrl+ulQQ30gnm2zXNShbkIWcaJY5yq4P jP01xRxgLZZ1wmFXxptdmeois5CQJpgFPjujs/McxTZGyjZMPiMdJpn9bH7rK8phEePLTvbM E/9G97KVNa2bpmmnzbxjLMIRixkfdjHbgO4ioR5tqUCuitgkpUwR4+OpjpanxCqSPSPilLVo 873StI17JrQ6GGBGDI0kziJc4yMX82VJ6hSlGbE0IXEVZZzylYtFkbKUa5wqLkyVGMOpzWgX TUp2iE5f4sLFTJQsgYvmuHhO9b/l0U5uGnRlvlWrdfE0pVskcU9Fw1XVig6lsfpnaFC26uDI MY/z+aP7+vdQHhrp2XNzgaPJmjCxskljm1kmmsa9QoxH1PmTbF2q1Bp08kuBJnLj8qPR3sUi Ucv7vKs3Kr/1NdlSzzwmLqQV828GL+28GDfyVjYb+twY0uLH5UTN2Z3HA3ZLSLVc5u1OqNSy P6ZKak65AgAA X-CFilter-Loop: Reflected X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 3CACA100004 X-Stat-Signature: zz956m5s7nyajdy8kapafmdmoxg96a3w X-Rspam-User: X-HE-Tag: 1748399369-340302 X-HE-Meta: U2FsdGVkX187/xjqPqHYjlMoAm+Xzh0pQSMsKfTNAAw5bJ+WHuOoM3VizVrPYP5Bqc+YjGv+ka7RQnTr0uFBr60ntmjBCn5IhuRYzCxyA3aRqfP2HkrH8T4sEvsyxrlXf734e9cVHRPDqLFm89Hb/cdWy+WnvY4jNjjkf1hDHwG9bQ/tj4W6LZAMcJ++x52MN+S8DDq4lJYe6Ub6EbIunbj3hPHRCDlY6pMCw8NHH6CIl0Ovq9J1OIBknVG2MS0JClQJmivJNS8pAzL4RQ5awAmzdJfdslbuo5cJNOD58ykIkkUXa995F7uLtJndQtfnyuyjTbvIjKSMpvKzgGNBS7Gme4XJp6P970BtuS8aag/m/Kb+BIVl+Qg7qNB+WcOLDS5iOWpB0ULt9HpzQ5UwlLZmW4JIzLCwtkA39nMrj29Y2+NutJm5VjwBXJ/YNCuVqP5g7cKb54VkgjoEeggB+vlA/keWpDykPGCty+r5xZk8xMusfnTmqZUAhfwOoHS07YwLMiq6ETfCgv1w1VWrzmuK8SCDgMZ9hK9cNkXZMrdUoqaLKDg5dLdewA1PtW4N+1d5rSMgzbk3TTg6GserxLorxN9ImuRBRtP/fhec8hSV7uTQPKC1pXjoCG0ofzjj22/qyhihv4Az5W5MxVIQ3g3jWIQu84LyN5qp7etD/8pzi8lalQku9TpzjA7KkHt0soxksu4gjK5vEULkO//JZQsjyEXUi/wtuqjUKR40HHk+j0MCtju8KwRCP+NlTuSvfhhmB41lk2veeUOpMDCPB3JJoGFKwCdUeAgyUmxk3Q5l3Q2XIfDyhhqTQCw8++VEQEofjInlEodlIcFMZQtw5TA10EA1SGY/vXyc2VjiCn5E7gZsMicce8qgS1fHGKFawQAvQl2TLJ9fp8zDq6XsuzGmIaB3dGr20+ZleDsTLeX0rOSRQYnuhrVI8nrPpOk9Uel4jwE1YcRFH2BQXxr 7Brud2Ag 7Kd7wh5WSvmJY7L0GpsQ2AJfIkzyq+VxNbC5HYKWp+NMYAMM+TRGoHfpFQOiPHSNFXWBU8460UwWL7ml9o9CsHR4Lg2jI0Tl1cN5PD2TdBKPeetjfrCG26WdaVUC0tg9n/mAw9ieDz9zEAGw= 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: The current page_to_netmem() doesn't cover const casting resulting in trying to cast const struct page * to const netmem_ref fails. To cover the case, change page_to_netmem() to use macro and _Generic. Signed-off-by: Byungchul Park Reviewed-by: Mina Almasry --- include/net/netmem.h | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/include/net/netmem.h b/include/net/netmem.h index 37d0e0e002c2..4c977512f9d7 100644 --- a/include/net/netmem.h +++ b/include/net/netmem.h @@ -172,10 +172,9 @@ static inline netmem_ref net_iov_to_netmem(struct net_iov *niov) return (__force netmem_ref)((unsigned long)niov | NET_IOV); } -static inline netmem_ref page_to_netmem(struct page *page) -{ - return (__force netmem_ref)page; -} +#define page_to_netmem(p) (_Generic((p), \ + const struct page * : (__force const netmem_ref)(p), \ + struct page * : (__force netmem_ref)(p))) static inline netmem_ref alloc_netmems_node(int nid, gfp_t gfp_mask, unsigned int order) -- 2.17.1