From patchwork Tue Oct 18 19:41:26 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrew Boyer X-Patchwork-Id: 118498 X-Patchwork-Delegate: ferruh.yigit@amd.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 7885AA0560; Tue, 18 Oct 2022 21:47:34 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1C41142B7E; Tue, 18 Oct 2022 21:47:26 +0200 (CEST) Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2066.outbound.protection.outlook.com [40.107.93.66]) by mails.dpdk.org (Postfix) with ESMTP id 1AAA74284D for ; Tue, 18 Oct 2022 21:47:25 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TNVqgMlDvSwmaO+ArXdjdYmj7NYg2Uiq9lvezIQiG+YC+/k7rDwXvgZI7BjQYoqwG0+o2rkE0okcoV/X8xc+eaTkgUVuywjqpdv8uqRBTC8XL014hVSWI4338jeO0fLIx6o+WhnZ6FDvftOJg4k1jButEUwTdKLgvK0A5moOZWCFw325lF88aYAWyvJz+IXFPXI7z00U/dGpJLc6xFlwLmTkqoVu/z/D437II1tgFmtEE5fnjfLTBU4pNVOVrc5XZWno9RN5wwbxkmfw4Y0K68u3EmsN6jO7UalTDVpuqh2AKgBEHtLDwMSfOsJBR0GZbcd3aHX+6CGbYJLLdIWi7g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=U6vYHqv5ZDhhB1KH1ABCDdp9AYPDyvFRdEe4Tpmz8Fg=; b=fMtRM7PmZGh3qbbmw3mNHqkPj6nqX2RqKx8qPxFod13LQ1U2uOG693qJ/uUrpu1OD6cFKQrnABlHe63XQDOPwzYP6vRotFbtfnyr4IuMwnz6gAlstB9CLIwrRgcAVy4g0Gen5oHRUSizUmstxqtMqB9g/feQ+6cwqdv/qCidx8YgCbGO7C/XomL8MywqX1pfOaBi+uoLKzbvbt6tSXawRzbPEwz+7xtkleHRDC+6IPa2LnULAuoSGicUTCd7o5Bw5yWrh3/3tnpc5kTNd6Fp0519b++nd1uNBZ5fl3ZJhMsf9X91xiaGzVWjxh/6BNGioeDnfzRw4gCaHIvUsm7V/A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=dpdk.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 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=U6vYHqv5ZDhhB1KH1ABCDdp9AYPDyvFRdEe4Tpmz8Fg=; b=xRUWaJxlwxjRxAsFKc1MxU7vdDJf6gXrk9vwFw4qiS4SyJR9d/Ashag6OGE0+Bgx4quaUq0Ch0O2hWuXVTqUOlNnSTM5ZAGcmtv5fyEHs7FoZD5BneiER6vhiaoWPbtGMPFF5JvwkBQpyvcOkF4PYgcw7LNHsNoxKWisape3e4w= Received: from DS7PR05CA0087.namprd05.prod.outlook.com (2603:10b6:8:56::9) by PH7PR12MB6811.namprd12.prod.outlook.com (2603:10b6:510:1b5::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.29; Tue, 18 Oct 2022 19:47:23 +0000 Received: from DM6NAM11FT115.eop-nam11.prod.protection.outlook.com (2603:10b6:8:56:cafe::bb) by DS7PR05CA0087.outlook.office365.com (2603:10b6:8:56::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5746.14 via Frontend Transport; Tue, 18 Oct 2022 19:47:23 +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 DM6NAM11FT115.mail.protection.outlook.com (10.13.173.33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.5746.16 via Frontend Transport; Tue, 18 Oct 2022 19:47:23 +0000 Received: from driver-dev1.pensando.io (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.2375.31; Tue, 18 Oct 2022 14:47:22 -0500 From: Andrew Boyer To: CC: Andrew Boyer Subject: [PATCH v2 31/36] net/ionic: add alignment and socket info in allocations Date: Tue, 18 Oct 2022 12:41:26 -0700 Message-ID: <20221018194131.23006-32-andrew.boyer@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20221011005032.47584-1-andrew.boyer@amd.com> References: <20221011005032.47584-1-andrew.boyer@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT115:EE_|PH7PR12MB6811:EE_ X-MS-Office365-Filtering-Correlation-Id: 05e67ac3-1405-46ce-4700-08dab141937f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: gcp//ubpERo1eMeiKwtYrp3ZKdW2608AnrhgMY/PcJcCY2EXVxVZ1aYdHV5z5eI7KdA/8RIV1fd4DDQxFj7TP9nvnDiNBqy5AxgxZ4jlCw5Ovuix6tUxuTR7NKft9xY4plhw4tkmcyjJkz6zMsI5jUb2DFXNqtl3+1O3HbL7XGekNy9y9ZgsMTbFmtwQC6pnJrX6R+AAUTekCdfSS0HlBWOCcznhY9/KhZuvKn118U8qWxKrMnqXXoM6yy04H6TkkXHUz0SiW3Z0oyF7rJ+Q3doYsCmHdBTq34sQU0cZgTNy/EKaJmaYVBdJrJtkyeLSAPolpWDlZtVQr4MCKub1gE73b5JBLNoutmAp1NKE62BkZXz9ZEN59grf3mME1xFZ2xWXkmbhe+dqInEnt4TU/vBbE96LxkQ7yRCL1+TACvF13LDK9dOFSrpAcjz7I/8hKLFJ7QXGtM+euMsulgDrD/rwpB9hWHDNWwTkDWebsn4MBKmW0B78CtRpmxSQ9qf/Zr7oYaXjqlcMOULFnZSQum53rnru5cC/bS9Wk4tGIPiyvj4BXRJMjSZ9Tn3JnSUrZ9GhsthdDGpE9N/BnxVogkaJw4QihJlNALlu6ELLs2XYYzYp9DiCDuecshs02AJOQuK/+7XPSnEZ5OJL8yS4yh0zdcGn7Z0cRVRylUr3s/MxJEGUSWMOiXS2mQaW8RJWbceMyTfEeZcHTJHRw+nK99dFyl2CJGTByg9dKO0xAY7jtV0lKFAQ5oQ4zlpibgTDt10FFshkWPg6uOf18tV30w35Z530pYVWjVKdCnlhy/0LnpiPc7PDm6PhevDeugdD 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:(13230022)(4636009)(39860400002)(376002)(346002)(396003)(136003)(451199015)(46966006)(40470700004)(36840700001)(81166007)(356005)(47076005)(426003)(336012)(2616005)(82740400003)(1076003)(16526019)(82310400005)(2906002)(186003)(70586007)(6916009)(44832011)(36756003)(316002)(478600001)(40480700001)(41300700001)(83380400001)(86362001)(26005)(5660300002)(70206006)(36860700001)(40460700003)(4326008)(8676002)(8936002)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2022 19:47:23.1304 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 05e67ac3-1405-46ce-4700-08dab141937f 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: DM6NAM11FT115.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB6811 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org This will avoid memory access penalties on NUMA systems. Signed-off-by: Andrew Boyer --- drivers/net/ionic/ionic_ethdev.c | 5 +++-- drivers/net/ionic/ionic_lif.c | 13 ++++++++----- drivers/net/ionic/ionic_rx_filter.c | 3 +-- 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/drivers/net/ionic/ionic_ethdev.c b/drivers/net/ionic/ionic_ethdev.c index b1d8663329..2f720315c3 100644 --- a/drivers/net/ionic/ionic_ethdev.c +++ b/drivers/net/ionic/ionic_ethdev.c @@ -1005,7 +1005,8 @@ eth_ionic_dev_init(struct rte_eth_dev *eth_dev, void *init_params) /* Allocate memory for storing MAC addresses */ eth_dev->data->mac_addrs = rte_calloc("ionic", adapter->max_mac_addrs, - RTE_ETHER_ADDR_LEN, 0); + RTE_ETHER_ADDR_LEN, + RTE_CACHE_LINE_SIZE); if (eth_dev->data->mac_addrs == NULL) { IONIC_PRINT(ERR, "Failed to allocate %u bytes needed to " "store MAC addresses", @@ -1083,7 +1084,7 @@ eth_ionic_dev_probe(void *bus_dev, struct rte_device *rte_dev, goto err; } - adapter = rte_zmalloc("ionic", sizeof(*adapter), 0); + adapter = rte_zmalloc("ionic", sizeof(*adapter), RTE_CACHE_LINE_SIZE); if (!adapter) { IONIC_PRINT(ERR, "OOM"); err = -ENOMEM; diff --git a/drivers/net/ionic/ionic_lif.c b/drivers/net/ionic/ionic_lif.c index 8b10b26266..eeec4860ba 100644 --- a/drivers/net/ionic/ionic_lif.c +++ b/drivers/net/ionic/ionic_lif.c @@ -598,7 +598,8 @@ ionic_qcq_alloc(struct ionic_lif *lif, total_size += rte_mem_page_size(); } - new = rte_zmalloc("ionic", struct_size, 0); + new = rte_zmalloc_socket("ionic", struct_size, + RTE_CACHE_LINE_SIZE, socket_id); if (!new) { IONIC_PRINT(ERR, "Cannot allocate queue structure"); return -ENOMEM; @@ -1037,17 +1038,19 @@ ionic_lif_alloc(struct ionic_lif *lif) return -ENOMEM; } - lif->txqcqs = rte_calloc("ionic", + lif->txqcqs = rte_calloc_socket("ionic", adapter->max_ntxqs_per_lif, - sizeof(*lif->txqcqs), 0); + sizeof(*lif->txqcqs), + RTE_CACHE_LINE_SIZE, socket_id); if (!lif->txqcqs) { IONIC_PRINT(ERR, "Cannot allocate tx queues array"); return -ENOMEM; } - lif->rxqcqs = rte_calloc("ionic", + lif->rxqcqs = rte_calloc_socket("ionic", adapter->max_nrxqs_per_lif, - sizeof(*lif->rxqcqs), 0); + sizeof(*lif->rxqcqs), + RTE_CACHE_LINE_SIZE, socket_id); if (!lif->rxqcqs) { IONIC_PRINT(ERR, "Cannot allocate rx queues array"); return -ENOMEM; diff --git a/drivers/net/ionic/ionic_rx_filter.c b/drivers/net/ionic/ionic_rx_filter.c index bbfc217826..cfcfd2a1ea 100644 --- a/drivers/net/ionic/ionic_rx_filter.c +++ b/drivers/net/ionic/ionic_rx_filter.c @@ -55,8 +55,7 @@ ionic_rx_filter_save(struct ionic_lif *lif, uint32_t flow_id, struct ionic_rx_filter *f; uint32_t key; - f = rte_zmalloc("ionic", sizeof(*f), 0); - + f = rte_zmalloc("ionic", sizeof(*f), RTE_CACHE_LINE_SIZE); if (!f) return -ENOMEM;