{"id":2219892,"url":"http://patchwork.ozlabs.org/api/1.2/covers/2219892/?format=json","web_url":"http://patchwork.ozlabs.org/project/ubuntu-kernel/cover/cover.1775379454.git.saviram@nvidia.com/","project":{"id":15,"url":"http://patchwork.ozlabs.org/api/1.2/projects/15/?format=json","name":"Ubuntu Kernel","link_name":"ubuntu-kernel","list_id":"kernel-team.lists.ubuntu.com","list_email":"kernel-team@lists.ubuntu.com","web_url":null,"scm_url":null,"webscm_url":null,"list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<cover.1775379454.git.saviram@nvidia.com>","list_archive_url":null,"date":"2026-04-05T09:02:38","name":"[SRU,N:linux-bluefield,v1,0/1] net: page_pool: scale alloc cache with PAGE_SIZE","submitter":{"id":91107,"url":"http://patchwork.ozlabs.org/api/1.2/people/91107/?format=json","name":"Stav Aviram","email":"saviram@nvidia.com"},"mbox":"http://patchwork.ozlabs.org/project/ubuntu-kernel/cover/cover.1775379454.git.saviram@nvidia.com/mbox/","series":[{"id":498768,"url":"http://patchwork.ozlabs.org/api/1.2/series/498768/?format=json","web_url":"http://patchwork.ozlabs.org/project/ubuntu-kernel/list/?series=498768","date":"2026-04-05T09:02:38","name":"net: page_pool: scale alloc cache with PAGE_SIZE","version":1,"mbox":"http://patchwork.ozlabs.org/series/498768/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/covers/2219892/comments/","headers":{"Return-Path":"<kernel-team-bounces@lists.ubuntu.com>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n unprotected) header.d=Nvidia.com header.i=@Nvidia.com header.a=rsa-sha256\n header.s=selector2 header.b=R38L1hBD;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.ubuntu.com\n (client-ip=185.125.189.65; helo=lists.ubuntu.com;\n envelope-from=kernel-team-bounces@lists.ubuntu.com;\n receiver=patchwork.ozlabs.org)"],"Received":["from lists.ubuntu.com (lists.ubuntu.com [185.125.189.65])\n\t(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fpRMV0jrWz1y2d\n\tfor <incoming@patchwork.ozlabs.org>; Sun, 05 Apr 2026 19:03:33 +1000 (AEST)","from localhost ([127.0.0.1] helo=lists.ubuntu.com)\n\tby lists.ubuntu.com with esmtp (Exim 4.86_2)\n\t(envelope-from <kernel-team-bounces@lists.ubuntu.com>)\n\tid 1w9JO1-0004Ns-Qh; Sun, 05 Apr 2026 09:03:17 +0000","from mail-westcentralusazon11013001.outbound.protection.outlook.com\n ([40.93.201.1] helo=CY3PR05CU001.outbound.protection.outlook.com)\n by lists.ubuntu.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.86_2) (envelope-from <saviram@nvidia.com>)\n id 1w9JO0-0004Kz-8U\n for kernel-team@lists.ubuntu.com; Sun, 05 Apr 2026 09:03:16 +0000","from BN9P221CA0004.NAMP221.PROD.OUTLOOK.COM (2603:10b6:408:10a::12)\n by IA1PR12MB8222.namprd12.prod.outlook.com (2603:10b6:208:3f2::11)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9769.20; Sun, 5 Apr\n 2026 09:03:10 +0000","from BN2PEPF000044A7.namprd04.prod.outlook.com\n (2603:10b6:408:10a:cafe::47) by BN9P221CA0004.outlook.office365.com\n (2603:10b6:408:10a::12) with Microsoft SMTP Server (version=TLS1_3,\n cipher=TLS_AES_256_GCM_SHA384) id 15.20.9769.27 via Frontend Transport; Sun,\n 5 Apr 2026 09:02:59 +0000","from mail.nvidia.com (216.228.117.160) by\n BN2PEPF000044A7.mail.protection.outlook.com (10.167.243.101) with Microsoft\n SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.20.9769.17 via Frontend Transport; Sun, 5 Apr 2026 09:03:09 +0000","from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com\n (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20; Sun, 5 Apr\n 2026 02:02:58 -0700","from mtl-vdi-959.wap.labs.mlnx (10.126.230.35) by\n rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server\n (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.2.2562.20; Sun, 5 Apr 2026 02:02:57 -0700"],"ARC-Seal":"i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=fl96kURwQTvMaTgMuyNJ82u16saqD8/gJQfz+scNTPS0myU5EUarAAL4rBo5Dlupdqxa9zzFZf6fmowIS1bViBRCYvRv5SZpf8dU7gGWauTmWLtISVNBcDgW1a87JnlcW3yLQ/jJ47DmWzFoHSX32M13haYic2aNDz/EE2yBN207+ws7l8wGh4pkOoGsny0LZg77sox1AWmcbT1zHZ8nN8DuQKJ6aA3UoBMbUhb4MM/mG2HdoxQNwjBK1jzhKffoQrkgNm5Dy3z4Z3YoFr+C2DfilXYykbIr071L9XdE4/lOj3yFXdon0uP+OFoLzSW2OdCVWbUd1+kso+GmbqM/dw==","ARC-Message-Signature":"i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector10001;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=p70DyXaRuelM4gWUVoLY8D0T1CApD6MInjedalR/gQI=;\n b=HiI+jsoa0zUIuEE+Ocl3q3O6wRMAkGxfn+ljxUuNRgl0ZIQblEu/XqfRNgA5aq6+UNMLv7P8VkHcwXM3kyo8UbBNUQDf7F93O6qippCc0WUZpLC7EZkAcJPTZ+YXtTsN50xwETJa69W8Rut/2I50p0auaqMLTenOMJxLOAO0GYMlpo6yihXEDI6QmbxGZmh28peNDahIUkN+nKI81ewU9UpjuS5RZnzTBPeDxO9OvweGkv5+jkgikoStzC855ONQ8JO3E7fF63KZGosXTHaIM1RYJsfXx9hSD1ujYPsbZv5ahPlLMPkP15BfHuDQQexTwOE4hlL18UkUo838mxeI4Q==","ARC-Authentication-Results":"i=1; mx.microsoft.com 1; spf=pass (sender ip is\n 216.228.117.160) smtp.rcpttodomain=lists.ubuntu.com smtp.mailfrom=nvidia.com;\n dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com;\n dkim=none (message not signed); arc=none (0)","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com;\n s=selector2;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=p70DyXaRuelM4gWUVoLY8D0T1CApD6MInjedalR/gQI=;\n b=R38L1hBDJgr4jBkSkC7KwB/2k/g2HqFVU53UzHLGhGlEfwJWsXHptNKt3+qAZUZFNAvLmWgPrUVkanAuIYWiyH8muUHC80O4LFXg4WTUmn6RsPLI1Z/yWW9tvPLQiXFATyMEPpFdh5DGRpC4r9OT8peWmOvJQgTXj0f7ASV10zsMNPg0gfudKK5Bk8Irln3JaFlG8uFSQqZTxDnNgiZF2traqdT/Sqk5kwSH9A9s4KABzoTwqV+XqtVzuk5SUMFkq+hjO16hYmEXduwRXumJWdMEPrg53NggLX9NdtmWUKpqPWuDeStfkqs9Jj1UQ/EP+2j6CnTJ+DP2S3ViBfOb/g==","X-MS-Exchange-Authentication-Results":"spf=pass (sender IP is 216.228.117.160)\n smtp.mailfrom=nvidia.com;\n dkim=none (message not signed)\n header.d=none;dmarc=pass action=none header.from=nvidia.com;","Received-SPF":["Pass (protection.outlook.com: domain of nvidia.com designates\n 216.228.117.160 as permitted sender) receiver=protection.outlook.com;\n client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C","permerror client-ip=40.93.201.1;\n envelope-from=saviram@nvidia.com;\n helo=CY3PR05CU001.outbound.protection.outlook.com"],"From":"Stav Aviram <saviram@nvidia.com>","To":"<kernel-team@lists.ubuntu.com>","Subject":"[SRU][N:linux-bluefield][PATCH v1 0/1] net: page_pool: scale alloc\n cache with PAGE_SIZE","Date":"Sun, 5 Apr 2026 12:02:38 +0300","Message-ID":"<cover.1775379454.git.saviram@nvidia.com>","X-Mailer":"git-send-email 2.47.0","MIME-Version":"1.0","X-Originating-IP":"[10.126.230.35]","X-ClientProxiedBy":"rnnvmail203.nvidia.com (10.129.68.9) To\n rnnvmail201.nvidia.com (10.129.68.8)","X-EOPAttributedMessage":"0","X-MS-PublicTrafficType":"Email","X-MS-TrafficTypeDiagnostic":"BN2PEPF000044A7:EE_|IA1PR12MB8222:EE_","X-MS-Office365-Filtering-Correlation-Id":"509100b4-c1c5-462e-d9ed-08de92f228d2","X-MS-Exchange-SenderADCheck":"1","X-MS-Exchange-AntiSpam-Relay":"0","X-Microsoft-Antispam":"BCL:0;\n ARA:13230040|36860700016|376014|82310400026|1800799024|13003099007|56012099003|18002099003;","X-Microsoft-Antispam-Message-Info":"\n p5ot3I5VOTF4nntlmXJm31CDTu38PP/qFIs1e3IKVbqMQZjI232Djl/F6Nzu8PIJturu4U6q+iHwenhBqDVp2J8SI/qVP5bBnW2fnM1bbLVDegaaCaEnO/6Jw8G7l89mUNyIPRvzHIteOfuXaKY17J8kc8EsTmQXtIYtBIRoX4cxRdJpNdWhyrQ09XOOKXV95uabG1WpPgAP2MpViMqoZh69ai8IvJ5kplj2zccYEpIPPKHDaihFsRSRaEFUfpIOPo0qgZJAabAhG2IbZODeKFC27uHzWd9N/d2mruFnkP2Zg7J09Xm/eRDUc+/1MHZFW/0zzRM5sXVZdeCAcvxRC8NL1jT82hFI2VGs3prKg+binuCvsTHOB92+SReesEgz0B+J7fPlaDh4PTbIO3rbVIugz8keJ688+WoCRzSKoXkKqytnkRCBExCrA5SzeJYbE+nO4n/y20/M2S8o8meuhkPty/biBjgJICGcHrJQD3gzONmCEW/k+IuvH4HOoCzxNwzU2m+xYwDKG/kMYPFDA2vxoPA5g1SKL07DOdTsWy9Y+mUS4O8zMX9lEvBz4W7wJFkLC54E5S6xxxfR9wclrHe1WyJgqh6gWoBdW8xBAu1H8zVvUEbRVOc3mKeVuUurXd0O9Nu/pjTz6zYafeRzNRAxwb8vfOJoirqSVOUPVEn+LXw3wZA77Wdy199xsKnIOvzPD+uY7mWTfNnsWA9XLUg50VWMHCyp2ng07dNQuG3RTtUBiCEdbS8KNNt9by2tuw3stWsVT6VQhUapEX+bGA==","X-Forefront-Antispam-Report":"CIP:216.228.117.160; CTRY:US; LANG:en; SCL:1;\n SRV:;\n IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge1.nvidia.com; CAT:NONE;\n SFS:(13230040)(36860700016)(376014)(82310400026)(1800799024)(13003099007)(56012099003)(18002099003);\n DIR:OUT; SFP:1101;","X-MS-Exchange-AntiSpam-MessageData-ChunkCount":"1","X-MS-Exchange-AntiSpam-MessageData-0":"\n jnmBwUIdXZMKEB7BAsJZw/jtKJk3ciJx/BvBCnaUR8t3nUruzOsF3HQSj0TkAW8ASv04iqtOd2TLUTw0BXSh+GVC1Fb+4lp1tdTNgP7UpiC7g6EE/R2Ssnl4MJc1f/r5PpxQZwYz2ZbBpcPt42dil8aLYcvqDPU/fC/fE1Znp1ePxpuYQGRUVdVtdeinLi4lzUrXypGfzs2aDWIEF+mHqghA9lJ6RyWzP1lusNGo5pMwZ1xfJTN2fKKeJYi98bXa15EvoQojlNvY18zlHSye0E7goODtIGNUcjGdocc96q0r8C7wjkZ9Rny0GKLeZlCm4C9HMgWYa8GSeW5JRlnTd3rcGu8QdZLZ9j6MCPwxDJGFz9pnD3/4IfkkHKVAI9glmIuI9gdQln6hW4gmtZ//v6L6Kktoo+mm0eq+KgCECobXRo1ddLxOnZEf/6vqGyxv","X-OriginatorOrg":"Nvidia.com","X-MS-Exchange-CrossTenant-OriginalArrivalTime":"05 Apr 2026 09:03:09.5965 (UTC)","X-MS-Exchange-CrossTenant-Network-Message-Id":"\n 509100b4-c1c5-462e-d9ed-08de92f228d2","X-MS-Exchange-CrossTenant-Id":"43083d15-7273-40c1-b7db-39efd9ccc17a","X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp":"\n TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.117.160];\n Helo=[mail.nvidia.com]","X-MS-Exchange-CrossTenant-AuthSource":"\n BN2PEPF000044A7.namprd04.prod.outlook.com","X-MS-Exchange-CrossTenant-AuthAs":"Anonymous","X-MS-Exchange-CrossTenant-FromEntityHeader":"HybridOnPrem","X-MS-Exchange-Transport-CrossTenantHeadersStamped":"IA1PR12MB8222","X-BeenThere":"kernel-team@lists.ubuntu.com","X-Mailman-Version":"2.1.20","Precedence":"list","List-Id":"Kernel team discussions <kernel-team.lists.ubuntu.com>","List-Unsubscribe":"<https://lists.ubuntu.com/mailman/options/kernel-team>,\n <mailto:kernel-team-request@lists.ubuntu.com?subject=unsubscribe>","List-Archive":"<https://lists.ubuntu.com/archives/kernel-team>","List-Post":"<mailto:kernel-team@lists.ubuntu.com>","List-Help":"<mailto:kernel-team-request@lists.ubuntu.com?subject=help>","List-Subscribe":"<https://lists.ubuntu.com/mailman/listinfo/kernel-team>,\n <mailto:kernel-team-request@lists.ubuntu.com?subject=subscribe>","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"base64","Errors-To":"kernel-team-bounces@lists.ubuntu.com","Sender":"\"kernel-team\" <kernel-team-bounces@lists.ubuntu.com>"},"content":"BugLink: https://bugs.launchpad.net/bugs/2147290\n\nSRU Justification:\n\n[Impact]\nOn BlueField-3 DPU with linux-bluefield-6.8 kernel (based on Ubuntu 24.04 noble), creating a large number of sub-functions (SFs) via devlink (for example 1600+ `devlink port add ... flavour pcisf` instances) causes severe host memory pressure. In the reported scenario, available memory dropped from roughly 22 GiB to about 4 GiB after creating on the order of 1685 SFs, while total used memory rose dramatically.\nThe root cause is that `page_pool` uses fixed alloc-cache sizing (`PP_ALLOC_CACHE_SIZE` / `PP_ALLOC_CACHE_REFILL`) tuned for 4 KiB pages and NAPI/XDP behavior. On BlueField kernels (Ubuntu 24.04 Noble and Ubuntu 22.04 Jammy based kernels), each cached entry corresponds to a much larger backing page, so the same object counts multiply the per-pool memory footprint. Many network devices allocate page pools per queue or logical port; scaling SF count multiplies that cost and can exhaust memory on 32 GiB systems even when traffic is idle.\n\n[Fix]\nCherry picking the upstream commit:\n\"net: page_pool: scale alloc cache with PAGE_SIZE\"\nThe change scales `PP_ALLOC_CACHE_REFILL` (and hence `PP_ALLOC_CACHE_SIZE`, which remains twice the refill watermark) by `PAGE_SIZE` so that cache footprint in bytes is balanced across page sizes. On 4 KiB page builds the values stay 64 / 128; on 16 KiB and 64 KiB pages they are reduced (16 / 32 and 4 / 8 respectively), cutting redundant cached page capacity where the old constants were grossly oversized.\n\n[Test Case]\nCompiled tested on linux-bluefield-6.8 on master-next branch.\n\n[Regression Potential]\nLow. The change is confined to compile-time constants in `include/net/page_pool/types.h`, and was accepted upstream.\n\nNimrod Oren (1):\n  net: page_pool: scale alloc cache with PAGE_SIZE\n\n include/net/page_pool/types.h | 11 ++++++++++-\n 1 file changed, 10 insertions(+), 1 deletion(-)"}