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 82411C5B543 for ; Thu, 5 Jun 2025 20:14:58 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1B1D36B00D0; Thu, 5 Jun 2025 16:14:58 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 13AE56B00D4; Thu, 5 Jun 2025 16:14:58 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F1CDC6B00D5; Thu, 5 Jun 2025 16:14:57 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id C82C06B00D0 for ; Thu, 5 Jun 2025 16:14:57 -0400 (EDT) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 83F68815BF for ; Thu, 5 Jun 2025 20:14:57 +0000 (UTC) X-FDA: 83522450634.23.81B81A7 Received: from relay.hostedemail.com (unirelay07 [10.200.18.70]) by imf19.hostedemail.com (Postfix) with ESMTP id 38E731A0017 for ; Thu, 5 Jun 2025 20:14:55 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; arc=pass ("hostedemail.com:s=arc-20220608:i=1") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1749154495; 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=f+cjUMM/AEqKNUgpKT4nzaOOhbvSaoi3UBoC5zwm/Gw=; b=zlbgTHqCtq63vppd3b2MbN+UZaSdIaWSFRJirA5/fFbvF2jM+5aZxKj5ntHFFBRlkiUEb/ k4O17AcPY4r8rhZc3BUXLm/ukA6Tctx3SVBkD+CnFHxKyELGmOnV6ArQw9rSDVBa88uCHq LBPgKTYT9Bw77K8SgOmXvrNHeBpe1d0= ARC-Authentication-Results: i=2; imf19.hostedemail.com; arc=pass ("hostedemail.com:s=arc-20220608:i=1") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1749154495; a=rsa-sha256; cv=pass; b=kaxhJSHAhUb0fc5z2DvmTx41/mtVTbsJAlfuUQrgmJaEa6Mo+gjmVxqLB+uwyleVdUfjG9 PtAu8z3GLpamuKCc9HtGPyEpOGZ9FHQRNHgklTHMMhLa/2pheFaG5A/7+lwulotOre2zmi Lay0MaadI75GB+YfjOcr57opOeUs0To= Received: from relay.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id CAF4B161598 for ; Thu, 5 Jun 2025 20:14:54 +0000 (UTC) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id A63C55F9CD for ; Thu, 5 Jun 2025 20:14:54 +0000 (UTC) X-FDA: 83522450508.16.E984737 Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.46]) by imf24.hostedemail.com (Postfix) with ESMTP id AE483180008 for ; Thu, 5 Jun 2025 20:14:52 +0000 (UTC) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1749154492; 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=f+cjUMM/AEqKNUgpKT4nzaOOhbvSaoi3UBoC5zwm/Gw=; b=nhglob7r4p6pQW/LMSpld6IHvECk91Z+tqJP8ShxmZIutCPTzQ0tDetNgVnkhCLPiNSBqF IE1jPF7nNrnE7bOwgpJUk2eSyIWML+U39una4OJphW68WtoJjzpmW0AleImgy00zBluMEr vcsvG4CDxBudL09SpUTbocQdmUDYjgo= ARC-Authentication-Results: i=1; imf24.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=K0evDrUN; spf=pass (imf24.hostedemail.com: domain of asml.silence@gmail.com designates 209.85.128.46 as permitted sender) smtp.mailfrom=asml.silence@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1749154492; a=rsa-sha256; cv=none; b=KJWaMr2caC0SqZBf0xSoho4BawRboc/X31eYOGVui6gkocwGeN62qOrnhPqhrzNzzPbmaz NjsVKqXyXrYG75pktVPdTpvwQNCcY3nPNLITQlOGA6mmsWPPS8NdZ5JVvQ4iOK1KoClt1F PGni0Dao8lSaLMi0qUFlWgiXSZCJhuU= Received: by mail-wm1-f46.google.com with SMTP id 5b1f17b1804b1-451e2f0d9c2so11888905e9.1 for ; Thu, 05 Jun 2025 13:14:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1749154491; x=1749759291; darn=kvack.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=f+cjUMM/AEqKNUgpKT4nzaOOhbvSaoi3UBoC5zwm/Gw=; b=K0evDrUNVYcTy+LfpGGlwPVFRfgUyOjZ3Kc5ywGOxvWPQfDc5VJFlQmKXDPvspXlXD DWGB6sW1iPhX+qoeDrjaEyjz2C15PKrHq2E4XGGiq65bvO70IGxFsooJ8OUuduoAfb4B iw8r1IuuArvlj5F9EFvkeu/jaWG3kvOtfv9lqQhjgHUSQHAsUJyQZLu0qqu/MelHZ/pY v6FYa50C/v9/9VXWELaWB2mbeSla3gQcdr/eT3/mxyiMUF/9z0RaJwCpurR/Xt9jWrUJ VwJEbAw4Q36qF9IO6u1E0N07engX0UDG+ii/j9nZMffZmvRClPGI7wQEclFwdXu5M2zD cwSg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749154491; x=1749759291; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=f+cjUMM/AEqKNUgpKT4nzaOOhbvSaoi3UBoC5zwm/Gw=; b=mHkjuePuWMCT64G18yj5A7fDAGk7Xs5fxisSka6Pq+IOSzd88Ne6nADAxiODx+BpBP N0sUNByTXyMEipl+jMuA77rx1uTpGm49bAW8aykQ4+17AC2lolTpgwJTSMdEV6JxWlaE /D4V7NnT5NOURccf3kxaltFwECqJqhxhyRDY4Iq9VOqLNV0HV/vvzE5zYsVS+hlMZjaZ P8aoD18Lr7P/HDUGlJxBhABMjDk2XfnZFUWkrwFWaY/ZrOmU6+EFdgupB9eszO5ywh/D s5tqHd1xsDmwFArW2XSl0LKcwznunIGvaFZAvmTo7cP2nROu/Hu3aVB/NC7fhZzuSw+H br1w== X-Forwarded-Encrypted: i=1; AJvYcCWK6tUskPRj6hiPmf6UQKxJi0rlVzwGucmYHqqJxJeUaN3AzWy/WJuUqrjFGOJ7XbzwKJRKWix4iA==@kvack.org X-Gm-Message-State: AOJu0Yw0W3RPRPesTr7MaSCrNy17aMEcgFw8F+VLEABn/C2DFODY5MF1 nhpiwJshHzRqEgifEYgfNXM0TZOXsgMES8XyY+pLsBU5vM/FG2sOxKSY X-Gm-Gg: ASbGncsijKk8b1QmeWYcCMgBtbwZN79p65TtOva1pEVTx12ZRiJtVx1KsLG8fqA3Ryt 3Jxl0ps29Sc+guSsslQU9bwBEPJWzsobtIaJO3IX+B82p9QZzWF7gBfZAss9ofWKrYCJ4uAmZok GRVCGZ/xOWMCRAmktSmXUT8g6HQv64CZTlyI9ez/SjS5gE7kbutO0To+98LUJUzmFP0JwALeOp3 OwzTJNUDXNg66YHMK/izCJy+13KUxjbciMJrqcUfXkQrlwQ+VFhw4s2/9f1ECDiUrmkq5w+qvEp mX+DVieROU/QRsejbD2H6c509OjJNh5L2p2YwfOuFD46/a2zkwR/B4Fs0R/UAM3s2wLuHadCBFU ocaeTGt4= X-Google-Smtp-Source: AGHT+IFYycvJM2i/VSYKq/XS+8nRykdaQFdAMb7xHQBYhmMNIZdyie6Xtr4zGV+6D8zpAAR7QV4waw== X-Received: by 2002:a05:600c:1d05:b0:43b:c592:7e16 with SMTP id 5b1f17b1804b1-451f844f896mr52572425e9.3.1749154490953; Thu, 05 Jun 2025 13:14:50 -0700 (PDT) Received: from [192.168.8.100] ([148.252.145.124]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-452730b92d4sm109565e9.19.2025.06.05.13.14.46 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 05 Jun 2025 13:14:50 -0700 (PDT) Message-ID: <9138df77-fe7d-430b-a369-05453a76bdb4@gmail.com> Date: Thu, 5 Jun 2025 21:16:12 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [RFC v4 18/18] page_pool: access ->pp_magic through struct netmem_desc in page_pool_page_is_pp() To: Mina Almasry , Harry Yoo Cc: Byungchul Park , willy@infradead.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, kernel_team@skhynix.com, kuba@kernel.org, ilias.apalodimas@linaro.org, hawk@kernel.org, akpm@linux-foundation.org, davem@davemloft.net, john.fastabend@gmail.com, andrew+netdev@lunn.ch, 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 References: <20250604025246.61616-1-byungchul@sk.com> <20250604025246.61616-19-byungchul@sk.com> <390073b2-cc7f-4d31-a1c8-4149e884ce95@gmail.com> Content-Language: en-US From: Pavel Begunkov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-HE-Meta: U2FsdGVkX1+IPaRnnBbiAYQwP+jUvsj+hIzO3wqjKByHDUxoSwlQi4Z5LEEdIS4qxpLSncJpw23VSLzIUxyirFXhn4X3qMPKTZNv/8UaupLCRrBhTJ4cwx3okKKEGLpzI31SLuJgwWKVBsJ462SQZIZTtxpuo+tEGkbRvEvuKgiAl95ICkS0/ZkpnUNx4b7pyBBPONfzE8RhXKaZIrkSj3tCIQhMkoLLuF9cfoZziN6CCM4WRfBDKDsmcDLhqsYK/T1r2cd9txI5iG4mAknvXvO58qemEX02G7w5JuEWY2w3E4mr3VSGv9R8Hwx8bfoe6F5nUeOxUh0sR8rmqSvslXVHkdwzcNrR7zwJV6CcbP+1ahogqlS7/CTSVCDXfDHipWsX/HI4BGSbxgW80B5jExHkwdwd2FU94sOpn1Ov+i7aSDBrd0brFrUt6sqKNjSgvqcNuYeVhcM1VPXKKS7WBvV/+2r5WhewjhO6MBu8Y+TLOpQzmPd0dmR7d1M+mCogigq/XlC9ueTdHvewr6YE+YneUsrrUDir8CviLdpL4xVjktrHNsUX3ScvQlugnOnEgwL9SQAm8wQzvtY1kA8RMzcuNUn6QOGl1h3LyjE/Jdpwkq7FpW7oNoDtgv2jaHNQ5qXhnOwa/HuEkfxsblQV8GxBabK/giSIE9BkYceFr2ssRYHbGX/NCJ3bvSuh5Lb+6bR5ZcrmALrQs49KEw5yKgttcDsM9Zc2nkB8q4gQrY8LeAl5lCSwHtpy0wxHZ5hxpq7pR5BOgNNgUuJtfiTTBqAdpUR+uFQkXgfX56lUnAKdSkzR1CBxVEsv0UashqBcXw5kvYwlFj5PO2HN6aKasTSXqlyvEFDNcBPG11ZdSJXadtjjp2qM7gvncxhhmpc3nqDzAKhwyrx6+rlokcARe5vHs0K5wVEs1HB/3wMWB+TjQPqgOD2BMOVGZpYDtFgOvV02+pvdvIgNSxaLjN1 Clxyz/7P o/EJ2swvtua2PLuYq/kOHY4ZTvIvusOoNDBrpiwZfWyHAkupW0PJsUsOvWOcdyv9pdL6tjoRLTrzFUtkVZsZS/R+ZHOkuRGLFhonz4QvcBZNhmE0hOLlUNgVnVrYQO/reRi8H9sq0jxjBE4g3raJSRKaLcLcy34R1nZcp153bojGRRXriCovcEGeY+dQAj24fHmUqrqBlPMZoDYQ+A8lJHifeUN9KKD/IErgi2zb6TzhWTcrvULJA+FsqE0F4L5n4VmXBYRCvLN6Aq3oYPu739kLHG0Xtbj69aD+DBDE8g/ooXl1Bkf4cFWj8p8uskAEYgzwdcDwfzo+vfIEQXdqbX1FUZ5e6yTHdMtdUmZojvJQ4mN/298gJB8XOjgT5JCyYVdotrveM6Et+TFbQZMxLFW1h7qKMKDkUZV8hIxSMq6S1k8LPDItzPGCWXoNpeWgwJyV4OZ6ebN9ictWeINLmBN0f20dCNkxZv8RZ7j5MUc3EDkZjkgWlBNtSiHRY/1MsvZCXqDma15ioXh2E5cXNzDNzIlGe7QD8yq5/uznTXjs0ZN9OSoce/KueGQ7E0UmSpnN8ZsKRW870sd/TM2S2Go8K57RJWs02iNyg X-Rspamd-Queue-Id: 38E731A0017 X-Stat-Signature: ya88r11aqkze5npq6m5zr6j6f8wkqfbs X-Rspam-User: X-HE-Tag-Orig: 1749154492-775744 X-Rspamd-Server: rspam07 X-HE-Tag: 1749154495-533743 X-HE-Meta: U2FsdGVkX19+sNntauEz08HCk1shHD0ighNqjomOtGvwVtxAO7ZSToHb+KZNZn4InsGXYZ5qZOwdjPmeKRBYO/BWbX81MEae19wTzDMty12BIZAv3f2QiGoFx1P7O3Sx+afnGSyIIhd5w38/BKhcG4CM3mepqb6/pXHVVDrNISgeUse6QT2IE2N0SHvqkjVpy2r7DbiPEbVo8wjvMg5//rc6A2eb1lIwH938SH/nWls8VrkrQ370kar3PTBV32r/SNjzyXxwmSn/YNcYFwdgtS4rAAYuK3yy0wbAVC9p+mR50JYc3HDp4kPSc7ZgPnW8PK3X2NlCipn0cW4MKGgxpXlbWMHEqcE3WAE+b8mkkAziX3d7s3BKPi7axAkcYnh9EDhAxJ23q3ngO72J3hzsOfYqDHri7mAphTXEjxaqfamIrVzgLSNlRMBVTyofE72JqgDMhoHAdb4/vwfBtT0jv3aFQ10ilGGH7eNIBhXraWUG1r5Zs2J4bYyIpqUxYeCVWDqRMAWBQq6bDzFGCQ/xvw955W8sL6j7g+R3xcWUAmu2OC8Q7zqPg+aeoCA3TD7N7GHFQf9iNU4O6IBIiIYYJELTioJ8jsrss3WH2z+xtOFVD8CKRhNemdpW8/RUPpO7wAdS1+8a+4X13PL1QRWI5G8dxiorjZajw8yBSRrXan6jm/K1rIGMQgsZODgbFF7SYeMJuJ9HGDes/HRi/F+CA2h+eiY+VgDMmBiuDNmSrSiGYag1ytUIHs8Z6FrtMZI9avXVugCaKxX2/5t/hi9skzR0Kidl2oX7+mejnsRv1dcWYKaTOctybqFgqyongV/OSXCFNLnpQGz5kyzewR8uf+e/aF4RNniRP3EjjSOIr8qJ/2L6vYuAVmnyGN0A1xwILSO1FzPP4tTtvd2QoRjXSj5wCenmQEj6UQ+viWRx13tkZIssU5OHZOnrnmuSMu4k9VnzGTBFg4jS7CRkstm JFuQFzno lRI0pQ4FKBr4NvIX+J+40iFLdKBOhL+2i2Xi8Rvb/DrY319T6qzIqEQ2JIqDt8MsHl+ArheMFc0spRHf0R1Y1YXHewvcACuiwzE2b6HsAHxcmDmSJ4sMOyCRK1Kg6Ak0YTGfOCdydx2lBtU4e4hIIaPWpQHJFTk4sH7ybalCpcAmDva00NEPeZzzU+bVxwknB2GU33fCMek88oBG5jxr9K8dWu0gUl3777HEIxhbDSyfBwYa8TMW7Jl1eBr+HcGl59KCE2xYwiHD/YWb39rAXJ5bpjxEKE5piUaEa2qngKoPTDuCxXLE9ZwYGrd3PQjvnuP4yENLYus6ucrs+GB90sJFRHayMCUGwI9Xezex5U5LPjMC91BXh7AkomeNkskluGMeaZAR3pqycABXMUybfi5Ux+KixUJSJi7L8dppKWQQ5qsRY/Brlv0ekJm6A7pCu+mPGYreL+eMwv2UFhQzIz0BzEkx7bk8LNB/JIdHUiyfpdUc= 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 6/5/25 20:47, Mina Almasry wrote: > On Thu, Jun 5, 2025 at 4:49 AM Harry Yoo wrote: >> >> On Thu, Jun 05, 2025 at 11:56:14AM +0100, Pavel Begunkov wrote: >>> On 6/4/25 03:52, Byungchul Park wrote: >>>> To simplify struct page, the effort to separate its own descriptor from >>>> struct page is required and the work for page pool is on going. >>>> >>>> To achieve that, all the code should avoid directly accessing page pool >>>> members of struct page. >>> >>> Just to clarify, are we leaving the corresponding struct page fields >>> for now until the final memdesc conversion is done? >> >> Yes, that's correct. >> >>> If so, it might be better to leave the access in page_pool_page_is_pp() >>> to be "page->pp_magic", so that once removed the build fails until >>> the helper is fixed up to use the page->type or so. >> >> When we truly separate netmem from struct page, we won't have 'lru' field >> in memdesc (because not all types of memory are on LRU list), >> so NETMEM_DESC_ASSERT_OFFSET(lru, pp_magic) should fail. >> >> And then page_pool_page_is_pp() should be changed to check lower bits >> of memdesc pointer to identify its type. >> > > Oh boy, I'm not sure that works. We already do LSB tricks with > netmem_ref to tell what kind of ref it is. I think the LSB pointer > tricks with netmem_ref and netmem_desc may trample each other's toes. > I guess we'll cross that bridge when we get to it... I believe Harry wants to tag struct page::memdesc, while netmem is tagging the struct page pointer / net_iov. -- Pavel Begunkov