From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM04-DM6-obe.outbound.protection.outlook.com (mail-dm6nam04on2049.outbound.protection.outlook.com [40.107.102.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 08A89647 for ; Tue, 7 Jan 2025 09:18:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.102.49 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736241492; cv=fail; b=LeKblDurPuF2pq+tvnreChxYPrdAH7xU6fD0CO8Xy/56damWk1w+fhLW2hAunl6N3O5si+oG4T0HFsg4xTTMAa3A+OnoCZbdPtLoRc0C95ECPCqd97cb3d+d2LLJ/KQ9yT+6mT6+URjTjt5VoSNjjzXuLtihsHHTdGebDpjLB3U= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736241492; c=relaxed/simple; bh=ezkwIyRdbxaOr3a21ykOxuM5TnGO2PhL263AkqAljNs=; h=From:To:CC:Subject:Date:Message-ID:MIME-Version:Content-Type; b=hJjWtTSiYpnEAdrpGoOHeN2CFgl1KOubZWr7u5867Ln/J8bcrMDoMFjePb2CRRX3LedT3YCU52kwOAZ2LV4QCgZr40lbKrE6xIdRryuR8vEO4bM/KA98WCR1vrq3VK1HDJylTyYzIFQNpWtrqWEH/e9grKiXrhR0Xtd2UtfCZRM= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com; spf=fail smtp.mailfrom=amd.com; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b=RdmI1bhK; arc=fail smtp.client-ip=40.107.102.49 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=amd.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b="RdmI1bhK" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=k8U5jdIvx9X7crslzvy7rNJ0kaNxp+TEh+oZKuep52wF+ByIWhcNaAJTf2KcA93G8TvOw3HSFQju8sRHRt6K6amte7qGdwpbplsnl9FOGMEg40822+meXKzC6z8gube+v97IlMIFH6qY8VIfzrAdkMDzE5HvZ8ZZNrHm6a9dhZPZ5Dxf+DPCS6MaO6yq7ezcDJ6hBhj/JR64nX2Qf0nBxG3G3Y5H/wPaUm2YRKboKqDGxj3BHqmaiffFinmQdxXISs4PYt+YXVUKRxPlNjugMF49DC98cVMburrCaNfh8P9HiDArj1BpYMD9morVfWfqd4AxWUTFGS2YgokRpQxSXw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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; bh=37f6aRfi3HzV/Gr/wfTE1UANZ0EDleELHYVz0VaD/Yw=; b=q0IRec+G8L/dx7JrBX0oISSv6/N1R2yuU97WODAZxLK4nphcafUuQX455u00Dcm7n+yL8F79HvHOr+SraedNVbzRME8+FTy+crGflufD0TqH8yuUw3cYMKgmN+sa8hV0h9XllLj28TwZ81lSrjvEyu0VeEG6JJLZ0WlngH6aLNRUJq2cLDlI6XBFs4drW+4s7Z82qFKbDKmHmwaW41xxmsQsIeWVsnDBBDpWi/sM00doMoPULTFhmCx8ljP9smBJhtaKJBnVdReO1b7Sq+uEBvftcqv/5cLn6VwtLc1Ggopc9CQEam1gaDB9zlYJCZxLjfivcvZdEefpAdKm/J8b4w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=linux-foundation.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=37f6aRfi3HzV/Gr/wfTE1UANZ0EDleELHYVz0VaD/Yw=; b=RdmI1bhKbDW49WL9EJkDuwjcq8IgdKYCK+GK9kLpdnQ0LbPrxCc977YJeZjL+Kd9VsFlgNUpgyf8jIGDT935kfmvFCKiPdZgEKhZ6UzOPied9n7S1ntAsqNKQCNBg9ho8Km8XRDvIbwk6PG5KUgKRM1vjMT58BicA1R4n1Ougfw= Received: from SJ0PR05CA0062.namprd05.prod.outlook.com (2603:10b6:a03:332::7) by CYYPR12MB8922.namprd12.prod.outlook.com (2603:10b6:930:b8::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8314.17; Tue, 7 Jan 2025 09:18:02 +0000 Received: from SJ1PEPF0000231D.namprd03.prod.outlook.com (2603:10b6:a03:332:cafe::6a) by SJ0PR05CA0062.outlook.office365.com (2603:10b6:a03:332::7) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8335.10 via Frontend Transport; Tue, 7 Jan 2025 09:18:02 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ1PEPF0000231D.mail.protection.outlook.com (10.167.242.234) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8335.7 via Frontend Transport; Tue, 7 Jan 2025 09:18:02 +0000 Received: from spgblr-titan-01.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Tue, 7 Jan 2025 03:17:58 -0600 From: Nikhil Dhama To: CC: Nikhil Dhama , Ying Huang , , , Bharata B Rao , Raghavendra Subject: [FIX PATCH] mm: pcp: fix pcp->free_count reduction on page allocation Date: Tue, 7 Jan 2025 14:47:24 +0530 Message-ID: <20250107091724.35287-1-nikhil.dhama@amd.com> X-Mailer: git-send-email 2.25.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: SATLEXMB04.amd.com (10.181.40.145) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ1PEPF0000231D:EE_|CYYPR12MB8922:EE_ X-MS-Office365-Filtering-Correlation-Id: 62c32cf1-3c73-4b32-0d69-08dd2efc2fb7 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|36860700013|376014|1800799024|7053199007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?91UM//GsSSQOtvAMsNeMX3PoQLiUHtXXpcWTV6UsLC28CAKtLRk1HC+VyrDw?= =?us-ascii?Q?kkGbt2OacNn8vxZLkhTmeRRFHF7OaH8oRNNEBxYAKyEFHgC5Ua7sfceY8s4B?= =?us-ascii?Q?S2xEV69pbvBM+/vl9dTWSM7qV81wydEoj0Hp7WhCTXl9GCm/kFcle8yUOeg+?= =?us-ascii?Q?j5MNa/DganisE2sYWAhagJZ72y0zIv/dRwZiDqWCbqs7FDJhyxlxHkxYj2lU?= =?us-ascii?Q?LxHE91D2yg3dJTOSlrevIdgr2BKruAn8YvchZlxuIpX064vJHm1N6T9jpTu3?= =?us-ascii?Q?hPebB1/gU8yOBV7vtcTFOmT2aeFEUOvCLP4bJBVV1yo6JfHYMQt9zwZ9IcBY?= =?us-ascii?Q?XjQTsM95w3qbUr2TSBMC8gZgV5ILcPwsF+r0jphxSf51h5t1n7jpVLiJYQ+N?= =?us-ascii?Q?Xsc92QHTsY2OB/jL1YHuSUkSDj7FePyDvpYwWcSZ7uSTwQKLr4gNSJCbMcsj?= =?us-ascii?Q?MobUHrgxTyDHxtov0w6/0P+ef+cPpb2ywnF/NjZa4KA2Fy+WzTcoFfd8kuuu?= =?us-ascii?Q?AiA3NYfgnyg+uDJnl//vIqvI34SM41Fiaa4QHbfUl7uR2efcERf7PZFs/iuC?= =?us-ascii?Q?dwcLDpI+fASqIibWyD4VAhGWJWwSpWEkYC1XPyolTnMOJND0B1to880qJm+n?= =?us-ascii?Q?eqz5TZCzU4y10cL7+sHM1LN4w7nZ9xoghJd9Fzl9mQmi8UIF/VUBH30zSHMX?= =?us-ascii?Q?eer1dtnxR9m+9ripjdHexB2wcQ3eFKD0gaio21hPgc39+BVkxGgfepWgOVUu?= =?us-ascii?Q?6Ef7+PvpEaBKNV7CLTWmwRj7DiohhROFyp/HV5lihS2gALLb+UbHWf+2cAm4?= =?us-ascii?Q?orKtobqN1HycyZqKCp/S2wjYMWkF9qL3NBcVfoBV7jwOl0ikQefbVmxTwObu?= =?us-ascii?Q?adFbFEboskol0+8z9p3IQkfe5bCccNHdBXGl7n/g5BahkXMhCqWN4w/t2/iI?= =?us-ascii?Q?xlCBjBXTOh6q71a1m89elbIRofKXY1t83tIscCMnwScsRC//J3ogrPPMTRP7?= =?us-ascii?Q?Kd8la+hbPlljNx/frjHaadmnz0JHeeeR9PjN2IPTC2OBFTaZCM1p2v9bS5Di?= =?us-ascii?Q?4Hk/M1vKs5E/wEDjqq8pMbDi5rijGBgzp/ZzmP0VeflYtCjX7V1bSxGUEI5F?= =?us-ascii?Q?RgLKRT8SpfptyRv4CDGqixazLYYAd9m/cnH1amQdV/WhWIHJ2GNqsctIDhPp?= =?us-ascii?Q?q4l75p7uEr7aOhsXw7XLiyluhNUorofZDnbVp6P0zGRjlluIbQ0bO9wylfRH?= =?us-ascii?Q?xK9sIocZWDGaZ2sDBX2/kReupZYAVe1GAvxp3A++S4oCjsM9gQ66I3vhDXsG?= =?us-ascii?Q?/JFnOpvYQyFMUymggLJydyDXP6fOtp0ItU+K/JHua30oixpVLO8JLZiWb4GG?= =?us-ascii?Q?0ZdfJisgn9kjQA0qs12tGR9elYEiMvXSR2q9AXqdb+SXqPuNzU3nxkr44mX/?= =?us-ascii?Q?Z5ekZb/htIZUWEGQdqmw5mqtZooHNWd7UufvyIkvDc6MNN1OdcAb0fADIaSw?= =?us-ascii?Q?n8GyyDY69ozyPx0=3D?= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(82310400026)(36860700013)(376014)(1800799024)(7053199007);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jan 2025 09:18:02.2077 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 62c32cf1-3c73-4b32-0d69-08dd2efc2fb7 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: SJ1PEPF0000231D.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CYYPR12MB8922 In current PCP auto-tuning desgin, free_count was introduced to track the consecutive page freeing with a counter, This counter is incremented by the exact amount of pages that are freed, but reduced by half on allocation. This is causing a 2-node iperf3 client to server's network bandwidth to drop by 30% if we scale number of client-server pairs from 32 (where we achieved peak network bandwidth) to 64. To fix this issue, on allocation, reduce free_count by the exact number of pages that are allocated instead of halving it. On a 2-node AMD server, one running iperf3 clients and other iperf3 sever, This patch restores the performance drop. Fixes: 6ccdcb6d3a74 ("mm, pcp: reduce detecting time of consecutive high order page freeing") Signed-off-by: Nikhil Dhama Cc: Andrew Morton Cc: Ying Huang Cc: linux-mm@kvack.org Cc: linux-kernel@vger.kernel.org Cc: Bharata B Rao Cc: Raghavendra --- mm/page_alloc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mm/page_alloc.c b/mm/page_alloc.c index cae7b93864c2..e2a8ec5584f8 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -3037,10 +3037,10 @@ static struct page *rmqueue_pcplist(struct zone *preferred_zone, /* * On allocation, reduce the number of pages that are batch freed. - * See nr_pcp_free() where free_factor is increased for subsequent + * See free_unref_page_commit() where free_count is increased for subsequent * frees. */ - pcp->free_count >>= 1; + pcp->free_count -= (1 << order); list = &pcp->lists[order_to_pindex(migratetype, order)]; page = __rmqueue_pcplist(zone, order, migratetype, alloc_flags, pcp, list); pcp_spin_unlock(pcp); -- 2.25.1