From nobody Wed Oct 8 03:47:24 2025 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2084.outbound.protection.outlook.com [40.107.220.84]) (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 AFC91303DDA; Wed, 2 Jul 2025 17:27:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.220.84 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751477231; cv=fail; b=Ins1au7uWONUDIwYe1rW8U3Lg2UyXDQ8jGOHHzprvT9cgDC2wDcnJR7dc7l7l67nt8Vb8BRbhb7uaqlL5uAy+QooxLPMeMPyvZ/liUAxUPDvmF3mBFhBM2EaatB1J+S6rcBH8q2SzKZcbSNZ02FDVa7MQwMOSfN+tUGg1FCs4U0= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751477231; c=relaxed/simple; bh=9mfxkwTaFlgT5/lY1FN7vrbq4BSra95MLYWIOkI+I00=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=KttcF0LGxaIrXoXe8P8fp50c43xFnItHbRuK9tanP+YL3XFGl+L7f7Hzso8Vy4K8YT+/Yxtky6ikuUBR4l+AoSrYTUF6JqePfsJMDsxp7GSNVut7S2XD4fZedOKAw1E/0FJ+JEp6H8J7EMZIfVcqdlcbo9LnbYb9caF9gUK8eLQ= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=tllpsM2g; arc=fail smtp.client-ip=40.107.220.84 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="tllpsM2g" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=p+6YV3aoQ57REP5hWKwRayPvAS7WjYkDJG3s+Q6ZYg6pwjzDF7S9NDGSmYFxRZQbf3hyqookrABhy4VRYMfSEShPWofMy5vNlCDJmcA4DatvBMiVec+/dR3ltp12emubqq8Wt2gyOm6mUyG6T9kma7/JKx58oeO2Yun1QpKmhsCA/p2Ehz3FuToeQ9CEbyNxR/35oULzo/Pfu+m4aIUzdq0HoVe9mXJMSYJNKDvc57JSL5Qz8KFrYTuVwgziarx7FpjJITxL0h5uoX5jh5lz5eXzVTA5UnSSSW4hkwCY1skfEsg3WZtX1jkj0iAGqVno8jg7vdvj2FmXWJQwaInj+A== 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=9YB6RbA64MKfFLDnIgmf0xQCqxVznFM4ImyNahAtAkk=; b=HK0SUd7NxnSpZf3qxwy8HwnJqJhHkkknhWb9r3AI1JWPG6el3JLoX5myC/K91uUCEJwJNhwJlqQqjU16i9MEZO45a1RXQNrgwrlw5wjtnReEAV15gSUfw/m6bk+Yf8Yd58YK7gAy1koSO6FNAHnt3IpBTPzAMUgY1MWIFmu9MeOB7vlkMcb/Mq0FWcijg/AG9V2588vUFXHxQ9Fl1W/KajrU9qoJc646ahKtdvu/ffgbt7jtt2jgRK8Ucm4RhY//NJrVV+RZXjOML5QqeCZhS1+Ioml+bSAih3H42VhLHKOfOdVYIXuoKkMwG2eLFwv8YEaR8biroe636jC3U0WOdQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=google.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9YB6RbA64MKfFLDnIgmf0xQCqxVznFM4ImyNahAtAkk=; b=tllpsM2ggZ8s8C9oHWQNVZ7wJsDJCJLrX9yZa669t92qC4Bai2e4UcA0cmJ3PWQn2M1/UdhMe2/SPRwlnv9/6vRxLyoWhtQ2zIDjLdzc1/70YyUGgVfpCLBcxnOKTTAQWpA4Le+RyE37e/Z6jtoBODzv1aqPMMxBWgGHDp3UP66uM4ZxRL3akEazWD5gdSikPBNn3Wbb1SRDXWph7fiEloQcQ2gSVKxv/jnNymBvGu86cgKo3Oce8jZD/ZnhBkiBC5TWAkrvfgxBNNffTUxn3yf0iohL6ubaWEv+8Df1GVEe43PUcrdFJE+MBk9uw69Yfg1IA0KGQBmtFSZ3CY1F/A== Received: from BY5PR04CA0008.namprd04.prod.outlook.com (2603:10b6:a03:1d0::18) by SJ2PR12MB8692.namprd12.prod.outlook.com (2603:10b6:a03:543::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8901.19; Wed, 2 Jul 2025 17:27:06 +0000 Received: from MWH0EPF000971E8.namprd02.prod.outlook.com (2603:10b6:a03:1d0:cafe::1c) by BY5PR04CA0008.outlook.office365.com (2603:10b6:a03:1d0::18) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8901.20 via Frontend Transport; Wed, 2 Jul 2025 17:27:06 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.160) by MWH0EPF000971E8.mail.protection.outlook.com (10.167.243.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8901.15 via Frontend Transport; Wed, 2 Jul 2025 17:27:06 +0000 Received: from rnnvmail202.nvidia.com (10.129.68.7) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Wed, 2 Jul 2025 10:26:47 -0700 Received: from rnnvmail205.nvidia.com (10.129.68.10) by rnnvmail202.nvidia.com (10.129.68.7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.14; Wed, 2 Jul 2025 10:26:47 -0700 Received: from f42.dev-l-178 (10.127.8.9) by mail.nvidia.com (10.129.68.10) with Microsoft SMTP Server id 15.2.1544.14 via Frontend Transport; Wed, 2 Jul 2025 10:26:43 -0700 From: Dragos Tatulea To: , , Andrew Lunn , "David S. Miller" , "Eric Dumazet" , Jakub Kicinski , Paolo Abeni , Simon Horman CC: Dragos Tatulea , Saeed Mahameed , , , , Subject: [RFC net-next 1/4] net: Allow non parent devices to be used for ZC DMA Date: Wed, 2 Jul 2025 20:24:23 +0300 Message-ID: <20250702172433.1738947-2-dtatulea@nvidia.com> X-Mailer: git-send-email 2.50.0 In-Reply-To: <20250702172433.1738947-1-dtatulea@nvidia.com> References: <20250702172433.1738947-1-dtatulea@nvidia.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-NV-OnPremToCloud: AnonymousSubmission X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MWH0EPF000971E8:EE_|SJ2PR12MB8692:EE_ X-MS-Office365-Filtering-Correlation-Id: 49a713e6-600d-464c-a79e-08ddb98daabb X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|36860700013|82310400026|7416014|376014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?w3nE4PlS3wEVLGpfaRNaaEhm6hgIORRYtge2ZFeK0eSSzbC1/tDn7Dp9gKk+?= =?us-ascii?Q?U3gwoesrr4B5TenALVuzMNI+cjt92j4CTzouZ7Hba1+hxJu6l2tbZRaSHrQw?= =?us-ascii?Q?LnzvmltIXZkcdqDLH8g29486zTsJHWLJwGS9iZlyEOz6NxoA50ASHpUPdlEh?= =?us-ascii?Q?Uhl8Sc0jUWxGZ6Tuvm+9Dmnl2JG6xbkBuvsyn6u5kjbBuBAlod3BBxssFi5E?= =?us-ascii?Q?AKsAbFC2VX0eVk+NlcMQ38vP3mPJtEAQJnZRKRwGplmQTuQ4b1atDf4eGSUU?= =?us-ascii?Q?kjPYl3Wzyanphznw3s/04uBv6m3JCOzHkmnMap01pnVTBwMsYLH2I9gxmLD4?= =?us-ascii?Q?ePmSmH7iFh4i/P1N3itJjXjD7Kfa6EFWvwkZHO7G40MaOKPryKcCJh7cnRRK?= =?us-ascii?Q?JkRVG2ptCqOYimBUgYj+B70WwbnCPBwj03YTC73yf9GzzvHTBZ2wAhLKDCG1?= =?us-ascii?Q?liZvsB8K7ifFBScGEbxhq2bGexHJ0I2Eu18OVG0cy2RnhVIubYRE+IP/rYtR?= =?us-ascii?Q?GwPNf1cjl8dWsVKnRubFKdggc+LWQlJEB3akxOS1eHDWrH373hE4FCujH6sQ?= =?us-ascii?Q?lSbLriM4uuq39jMZCGoDQGYvXyDtvL8icTjGNhpcOhkW3qNnMbMIlNgOMGpy?= =?us-ascii?Q?hZ4RTnyncljdKpodqnoGbJL126lkwVgZOv1zzNNfp4Cr0lq4e5gNR+BxkJAf?= =?us-ascii?Q?6Jx/7X2X0SUPIQwcZgmIemwo6zcVNM+AEdNKadnlXq3KQsFu52BvPrCcOsEN?= =?us-ascii?Q?aHdmQKkpiCiodynuFJ6BZ+1ayIRqHwV/2V9cDLyueFV6qoGqQPQPC9Paqvvl?= =?us-ascii?Q?Fp1NcE7x2oLR6T4hMC2EEcPdvy9Zib0yrEnMwJ4wl9n599Lf+XLXC9hRhATR?= =?us-ascii?Q?NBPp/ssWAqTQBNVrSGwC0zp3HqhKxp05rlCeLKiaqimnzty8gVCxzJELA6qx?= =?us-ascii?Q?sTcBc17nciFPSbG/lLyceP8zufGHv17zx+1ijeSXnWpi+RLqeGVv7mJbaxAJ?= =?us-ascii?Q?ZlhkSbjFFw9GTD19VTnVfOyy525y3VhtCCeMO/HJv4+JZikIpsT/aUP0RYIK?= =?us-ascii?Q?HGj0zUcCGm29RJDQuxhXuj7SQQKP9zN82ihjxnqCUTqHGyM6DfGapwpeku4C?= =?us-ascii?Q?kpUdWOBVK3duHIqjv4hYTtbrzcAiioIjV0+ojVhvzhMZ2C+PvB/+N/9J4Qay?= =?us-ascii?Q?GYiFsLkWIhh3L4C5dQoRD9zymJIyGb1RYMrItus/YWqNAHm5yWeEtG2fnXzs?= =?us-ascii?Q?6UU8a8UA7F3Sc1bOeMfbdQWju8ZP0+0LZCD7Dw3F4HCifJMyPF+2RxMU4wAo?= =?us-ascii?Q?WnMYM//7nExLQQoI3yxOTFukZMTFEGyHeIVMO2Ju37EcAFdsZ1URS96MpSNY?= =?us-ascii?Q?8Fm4RwhR9WEY+98Qsjzf9xoEb8bgCXsyxDFq50rMV+TcD/Y7PC00OfjszTMY?= =?us-ascii?Q?Wigl9HGTpnooixKmEjUPGT3FVUhppOwBTPhm4FPQGN1MV3iFu1Q6EdIeEeFd?= =?us-ascii?Q?1l5Y6sTfn3sa6KDoHU9151he6U8LIIXTmIuK?= X-Forefront-Antispam-Report: CIP:216.228.117.160;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.nvidia.com;PTR:dc6edge1.nvidia.com;CAT:NONE;SFS:(13230040)(1800799024)(36860700013)(82310400026)(7416014)(376014);DIR:OUT;SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jul 2025 17:27:06.0920 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 49a713e6-600d-464c-a79e-08ddb98daabb X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.117.160];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: MWH0EPF000971E8.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB8692 Content-Type: text/plain; charset="utf-8" For zerocopy (io_uring, devmem), there is an assumption that the parent device can do DMA. However that is not always the case: for example mlx5 SF devices have an auxiliary device as a parent. This patch introduces the possibility for the driver to specify another DMA device to be used via the new dma_dev field. The field should be set before register_netdev(). A new helper function is added to get the DMA device or return NULL. The callers can check for NULL and fail early if the device is not capable of DMA. Signed-off-by: Dragos Tatulea --- include/linux/netdevice.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index 5847c20994d3..83faa2314c30 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h @@ -2550,6 +2550,9 @@ struct net_device { =20 struct hwtstamp_provider __rcu *hwprov; =20 + /* To be set by devices that can do DMA but not via parent. */ + struct device *dma_dev; + u8 priv[] ____cacheline_aligned __counted_by(priv_len); } ____cacheline_aligned; @@ -5560,4 +5563,14 @@ extern struct net_device *blackhole_netdev; atomic_long_add((VAL), &(DEV)->stats.__##FIELD) #define DEV_STATS_READ(DEV, FIELD) atomic_long_read(&(DEV)->stats.__##FIEL= D) =20 +static inline struct device *netdev_get_dma_dev(const struct net_device *d= ev) +{ + struct device *dma_dev =3D dev->dma_dev ? dev->dma_dev : dev->dev.parent; + + if (!dma_dev->dma_mask) + dma_dev =3D NULL; + + return dma_dev; +} + #endif /* _LINUX_NETDEVICE_H */ --=20 2.50.0 From nobody Wed Oct 8 03:47:24 2025 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on2082.outbound.protection.outlook.com [40.107.92.82]) (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 BF7B1307AC9; Wed, 2 Jul 2025 17:27:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.92.82 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751477234; cv=fail; b=dzbrK1h8cMiw1DCatsDSkrM5j46bDBGwWoudyqR1cIX0Vu5yTWyjupfkVvquuu9be8q0JBw/XezbbKL1aj8oT8LunWbCpZH3Qy7TrjZaUdc2j1swhQ0m+7p5/Juqz6V05jLMxJ5BVh6IPlwcw3o/bTJVs3SZPa0SexlIVIHGzoY= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751477234; c=relaxed/simple; bh=Qdj+AnKGitgM2MeOKVox3GYfZrRJJ+49jRj1cZhz1ng=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=M1EtPpcJIfxrx2WoMyUZ2vdV83J43w4yEyRDD9kWPMQGri9G4uG1ejTRXPBIRNKjOEAke6gpEFuthcbq55f4Q2KNnWJsSHIUXxCqMuhUnF2e6BMt2TZTlPpbWw28hgc5A5YJMI0IrziBZ9PbIl2+R7MdWLR5xMwhmwUDHS5hJpw= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=gf+uUwOs; arc=fail smtp.client-ip=40.107.92.82 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="gf+uUwOs" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=GHDaJHBt1Eb6e7sqHCq6HdjgR5ziL9fqOIG4DfW1N1BWonAXgvdPw8DYNVQHxmsgLk/YBb9CcVzVdKEwKbLDXBtY97Le4IrvNsoP9seM3pwHxzd+1zUkcDoLx9k02jHyeWTmyoxv24zgB5HCS/K6/Sv7rN9FWHqPezeRc8GbqIKqFzMI08cg6ndu7am90M5lCx3fLuI7ZYu2hnG2LQKmIz39GwvpnC8FdGNIE6uaUMUKT70iueMmUa/XrFJSU0eOYtL8NZIovfF1F54ujsrAcs5u/JSQM4uG5l5MUZnXixU0sYjQJfRGicSn4+nPK2JSc529X0Yj8YM9DqxlBnPt1Q== 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=h1ZbKCUzw48yP8VGHXotWnsxNAEeAeMBke+5ZYf2Fnw=; b=NXxobzUr91MG0n8V39KxtniKf7tI75yrSZ88zUALGBZF5r3SVP0PJ3JLIDKKyANzDAJh3oO4TVd6jAzuQfOZoGhKSLkOrflTCaZjHSgypcH9NrvyfLfs9qHuXr5pwz8ZmJ+Jkh8Ye44Iyr2d1qzaqa1LJlwq6/ixQtN9bMZ5IUa24rV0i/P/UtP73ygpRfnsSQM/nK2ZCOW7OUMoNtdEePBXUbN+I6UJRP26puetQJ9bXSnf/M7uRjje0TXwuYGEYtX6mkAzpg6D+YXuKFkyrB3VruhJmvX4kmhIUkPCRN5EcZg+RaYIElDpu1gpddwih+AxpSF5LDXnswvsX1Bdtg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=google.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=h1ZbKCUzw48yP8VGHXotWnsxNAEeAeMBke+5ZYf2Fnw=; b=gf+uUwOs6I0c/wjfH80hl5D1Ljiu+bFQRH0GsKdGh82bEVCbJAdoWgBYsFwLZfftIcednG29uFQ5DSP5/p/OeMZ1kY3YEcFnYx07MCdap47ifFWu4F3E7Q6gwig/Sck0HRmQ++0T7iD5ajITpXZRmOKHFLPX0pfd7TFOynlZ8sphJKvYU3NCANMKQPcmdCXzeaXY4iM6/OrDQKMm0IUeEbWdl8MkaLhT+pIm5sgxMR4qy9VCSqtAK/ZgOA1NqRJ231arK8jP+xescqn0OHVG/sHh+npj2nWj/Ro9mLKsFy8Yg/IlvxKi3Xsk8MlUqQE3A8hFAvai8BNwSLAKediSbw== Received: from MW4PR02CA0028.namprd02.prod.outlook.com (2603:10b6:303:16d::7) by IA0PPF0C93AC97B.namprd12.prod.outlook.com (2603:10b6:20f:fc04::bc7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8835.27; Wed, 2 Jul 2025 17:27:09 +0000 Received: from MWH0EPF000971E5.namprd02.prod.outlook.com (2603:10b6:303:16d:cafe::82) by MW4PR02CA0028.outlook.office365.com (2603:10b6:303:16d::7) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8901.20 via Frontend Transport; Wed, 2 Jul 2025 17:27:09 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.160) by MWH0EPF000971E5.mail.protection.outlook.com (10.167.243.73) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8901.20 via Frontend Transport; Wed, 2 Jul 2025 17:27:09 +0000 Received: from rnnvmail203.nvidia.com (10.129.68.9) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Wed, 2 Jul 2025 10:26:52 -0700 Received: from rnnvmail205.nvidia.com (10.129.68.10) by rnnvmail203.nvidia.com (10.129.68.9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.14; Wed, 2 Jul 2025 10:26:51 -0700 Received: from f42.dev-l-178 (10.127.8.9) by mail.nvidia.com (10.129.68.10) with Microsoft SMTP Server id 15.2.1544.14 via Frontend Transport; Wed, 2 Jul 2025 10:26:49 -0700 From: Dragos Tatulea To: , , Jens Axboe CC: Dragos Tatulea , Saeed Mahameed , , , , Subject: [RFC net-next 2/4] io_uring/zcrx: Use the new netdev_get_dma_dev() API Date: Wed, 2 Jul 2025 20:24:24 +0300 Message-ID: <20250702172433.1738947-3-dtatulea@nvidia.com> X-Mailer: git-send-email 2.50.0 In-Reply-To: <20250702172433.1738947-1-dtatulea@nvidia.com> References: <20250702172433.1738947-1-dtatulea@nvidia.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-NV-OnPremToCloud: AnonymousSubmission X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MWH0EPF000971E5:EE_|IA0PPF0C93AC97B:EE_ X-MS-Office365-Filtering-Correlation-Id: b371239b-b38a-4588-d2aa-08ddb98dac90 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|36860700013|376014|82310400026; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?uH4Jt1kRV+c6JiOwtpDvd0HsZgFlWKYyAMEzGAFLqCwQOPjn8qGVo0MH11pT?= =?us-ascii?Q?/jjyJHEaqViXUwo4gwbOAfkR4ZK1zGT6ngv7NoGc0bOByqj9SYJM8OrZB6x8?= =?us-ascii?Q?EC6AQYaYcupIAwcNgI/rfEFKGrbBul/Vh/tw/4xYvTfqTJmiwTLaa76BefUJ?= =?us-ascii?Q?sRx9/R/vJaVtaZo3Gn6GiymuvNYoLfyy/df8kKA0Z7NYUTU9XE+4YV/LG23f?= =?us-ascii?Q?6rPn+eW2fNE2ShrDb0bfEIslp94fRjizkue8aVadyX7Zx0DO5jHkkBi5HgxH?= =?us-ascii?Q?aZ77oiPeuKWpIEIEQR8Bs+RPpX/ip63SV9gfrdRl8p1G/nCuvXqrxiTezRDU?= =?us-ascii?Q?HF3s156v34Rn3K7jvl0Ipiwqf9MeWehXBU2Sxf2XIUTl2dHBDKLIbLm8IGCn?= =?us-ascii?Q?ylCo+u7Dz3L6JcKrSE0tGuvTFcVmrKw5zp6NJGEMy8uzALQxH5p2FwmN1qjx?= =?us-ascii?Q?nW6VcZIpfVrZXEac9zkRXvodBeBrV/yShoGJfTqEcJdacSinzJ3cWBi/LpVl?= =?us-ascii?Q?j+FizVoGQLdR/x1xoBdvlOSGa9LLIE2wPhfE/nLuLIx+Rie9wy72TDfXKY9b?= =?us-ascii?Q?Wx4yyYUIqDzStIbhT1X719sikFVXBgR8pbWj2rAMQL7jUxOJpuNLtkoLg7mb?= =?us-ascii?Q?soYBN1wsJcA7J+YlQRc/xyQfnbeXv+5R7FbyFi9ESWmNo/+Z3mytTLSv4y2a?= =?us-ascii?Q?qVf2Uly8hnN5eye33YzQ/Rt7bMRZ4wjmMMrDk5U7JQtE6LTOEF6DBJYA43u0?= =?us-ascii?Q?WQmt8dFyxX/CsymlxUCIM5zg98lK4jPBm45os28YbFk94DACyERGOd8r2sgB?= =?us-ascii?Q?hrZTLLq8ya2K5HoNbpKx6uyQk17NPw67+ZW7Ugf16cxBf2SIdij3ux8yqT2Q?= =?us-ascii?Q?YCH8qBrrZ2w5kzcNG40p0d0p/sjtwU2cpRAR3Z1ugVrDuBvKVCuxS1BOoGL3?= =?us-ascii?Q?g1bgYWW/sOPQ6MlQMrZCPcJD/3qxc9d6mBRNa9blnXMONiV/x/TCcdHS8gmB?= =?us-ascii?Q?Cz/5UF5zjEQqIWoBUHb6mffqtNfA6ILHQwnD+T2s6PSlkR+sd+fVRAD5TRoH?= =?us-ascii?Q?3Kfcn+zFClVPIIvRxhmM4ivmdxuMNKgF/wzbg8CKSO7CJyFbf/HPgNh9Mc8q?= =?us-ascii?Q?WsS4iVn8NrtfcvnseqPtePaT5CsKH2epJAbV1acBzrn8WZ1P93tggV9CWBwO?= =?us-ascii?Q?UxMD1rhn2qSSGYDLUXepb+ujs56h/ZerICsfN/Gt01Ys6OGYmVvFziwgtXtp?= =?us-ascii?Q?He8zfq8aeW6DyiAdqSvBCT0CaDJBGk0vJ6X6jFcl0XyQZvrBMeEVVUCXfZ0C?= =?us-ascii?Q?V6Wc4BJiRdUHM4EqHA9f2EXwS4akjF/OF7s5HQdcS5/as/6TfUIkl+MnQIOi?= =?us-ascii?Q?2sZu5O2GbjTmCDlTKUKXBMsHk4AlydSTx/k7jCV6WIAVb9Iih35BuFiFov7Y?= =?us-ascii?Q?B2HMzF9BvitDNwODYQ58q016gF5PSiRy7EOYORVJcohLgbcNCYO0rtxNeKnz?= =?us-ascii?Q?PTekSJWG187nojHRBNF9eFEy/QsHxbg7/uYI?= X-Forefront-Antispam-Report: CIP:216.228.117.160;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.nvidia.com;PTR:dc6edge1.nvidia.com;CAT:NONE;SFS:(13230040)(1800799024)(36860700013)(376014)(82310400026);DIR:OUT;SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jul 2025 17:27:09.1784 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b371239b-b38a-4588-d2aa-08ddb98dac90 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.117.160];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: MWH0EPF000971E5.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PPF0C93AC97B Content-Type: text/plain; charset="utf-8" Using the new DMA dev helper API, there will be an early failure if the device does not support DMA. Signed-off-by: Dragos Tatulea --- io_uring/zcrx.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/io_uring/zcrx.c b/io_uring/zcrx.c index 797247a34cb7..93462e5b2207 100644 --- a/io_uring/zcrx.c +++ b/io_uring/zcrx.c @@ -584,7 +584,7 @@ int io_register_zcrx_ifq(struct io_ring_ctx *ctx, goto err; } =20 - ifq->dev =3D ifq->netdev->dev.parent; + ifq->dev =3D netdev_get_dma_dev(ifq->netdev); if (!ifq->dev) { ret =3D -EOPNOTSUPP; goto err; --=20 2.50.0 From nobody Wed Oct 8 03:47:24 2025 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on2047.outbound.protection.outlook.com [40.107.244.47]) (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 5D977309A4F; Wed, 2 Jul 2025 17:27:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.244.47 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751477236; cv=fail; b=PdnYU7R8kgJz2GRG4UPDiZ/vebkB1zc06qs2H7+pRWcUUSs+cBpn6LcOEd18oV+VMQtrmVru0uuBrYxIHfC5QhmExUGXX8c/HkPXxl/TrIaV6Io96rP4FozzNiaucVLoZP9D+zOMc974FSERcLGlQnfOa1b+ra5qTN9XjHwBWCs= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751477236; c=relaxed/simple; bh=fWthAkWOT4Yvxb0YBh10yT7+xuUYm1/50bfjeQzmssQ=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=a963dpmmAmKaSYP80eEr/mIlyLSMxTJzPfR1Q7z7GkW6kexE6z9gYjwZj+qRv/McmjSd5wJr/GE/p1pAjqNaYkXRhTSumpOWgN/2kyNvMNcef+XIGUAl1cHRPSA2UB2hX3Oh1Qqfz8BTkxNaZlVJYXBaRTVgyOVY7hLxqA4E1ls= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=YENirV6s; arc=fail smtp.client-ip=40.107.244.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="YENirV6s" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=F/d2h0Z84xg8DZkDGMN0Y6JKCcK1lNWmdvPJoZYmAv1G+/McbsFO9F9Ng6L+AHDyjvciGe8utK46EnzZpTx5IyGhORJHDFCA4V7VlXozuqDxYqRPQ9i3W6iJM4Rn8FpUIlu9+YA8GVMV86E2eXkPTStzZzV5tY4XStD3LsZcUo1TKN3vV9SrpM1w10tpKb/4OssSS2qCLibCyzSu6d86ptYjudUg6GtFQHmVM4GK0PR6AC1njwWLOEwSSSzlgwmibUBLL+C1zt2AHO8lFFJdrz7ql8tOW+DSlp4iRQyIhcqEiOdvPGKUhH2ShKsa8gff1EqCzSs/Cw6BtLEIZI7GhA== 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=V8D3oCB6bpJnwh9U3PEPWYvdHal1dC1XydPNIVKlNb0=; b=iQZsZ/eIMCEY9OPaoYX0plt6fgpaQtpcq4OPWNmuU3nHSYy4hKBNMNvwRU6tjG8xquZZH0ALDGhIxYNYYoUBDTOpSjKd/cC24KKXRf2bEa9B1coW0GUxig9ViQtUtXELTGsdPOyoaj3HMlOX0j8i6fBnpalXfPU5mNjh8ZLfpneiGX4an4EgU5OvYzP0CkCytetLpeWj9YYYBE2Nuq9xaIzlmiOibjt7u63ah+h9UOjR4UJ1nmIy/j+LMSbL9bn83yOtc5f3ZACdnd+y/exG4UZw5fHCDz7rrktF9Hhz5dwW2fvCMwcEW7ZEqdkulWXuIMi+fJGWAjIgz9aAR4p4AA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=google.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=V8D3oCB6bpJnwh9U3PEPWYvdHal1dC1XydPNIVKlNb0=; b=YENirV6sGswCWhfp7NOokPS4dJHAYUkdX/98KQTbDMIz0mBz0HizX5cDrnkYxs1mt9tcsaDwlHG1vq+0hkDiIQ1J5l1A6/4Fk8lIE8Prxf0dzTXI8v0iHtGJDSiKNldLtG4v4ptxhA6U3OKpJCu3QpOV1sPelKhJfOUoVVKGHXQXoApfoDXvVeNgVNwOeFnxJhN9A5nEglyKaLZYMcsaXRN9gJBcRKcFOjrfV4vdNGYU/j8WGO9gGpDHmC9Ekx+V5r5xMtudw9Z6SLNRNrvgTrb3OdNL9lN0F5mIrhpHKzHC0wVEVGY5Ok5etRID9oBM/QHZ1SgVpmprOoN508w0eg== Received: from MW4PR02CA0016.namprd02.prod.outlook.com (2603:10b6:303:16d::22) by DS0PR12MB8366.namprd12.prod.outlook.com (2603:10b6:8:f9::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8901.21; Wed, 2 Jul 2025 17:27:13 +0000 Received: from MWH0EPF000971E5.namprd02.prod.outlook.com (2603:10b6:303:16d:cafe::31) by MW4PR02CA0016.outlook.office365.com (2603:10b6:303:16d::22) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8901.21 via Frontend Transport; Wed, 2 Jul 2025 17:27:12 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.160) by MWH0EPF000971E5.mail.protection.outlook.com (10.167.243.73) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8901.20 via Frontend Transport; Wed, 2 Jul 2025 17:27:12 +0000 Received: from rnnvmail203.nvidia.com (10.129.68.9) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Wed, 2 Jul 2025 10:26:57 -0700 Received: from rnnvmail205.nvidia.com (10.129.68.10) by rnnvmail203.nvidia.com (10.129.68.9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.14; Wed, 2 Jul 2025 10:26:56 -0700 Received: from f42.dev-l-178 (10.127.8.9) by mail.nvidia.com (10.129.68.10) with Microsoft SMTP Server id 15.2.1544.14 via Frontend Transport; Wed, 2 Jul 2025 10:26:53 -0700 From: Dragos Tatulea To: , , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Simon Horman CC: Dragos Tatulea , Saeed Mahameed , , , , Subject: [RFC net-next 3/4] net: devmem: Use the new netdev_get_dma_dev() API Date: Wed, 2 Jul 2025 20:24:25 +0300 Message-ID: <20250702172433.1738947-4-dtatulea@nvidia.com> X-Mailer: git-send-email 2.50.0 In-Reply-To: <20250702172433.1738947-1-dtatulea@nvidia.com> References: <20250702172433.1738947-1-dtatulea@nvidia.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-NV-OnPremToCloud: AnonymousSubmission X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MWH0EPF000971E5:EE_|DS0PR12MB8366:EE_ X-MS-Office365-Filtering-Correlation-Id: 3472547e-0517-4209-0f03-08ddb98daeb0 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|36860700013|82310400026; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?Sm/Mbbl4vdT8S0wJuGc4SQgO9YwpHfqSPe5twNrG7yDJzmWnFLV9LVy2UH01?= =?us-ascii?Q?lwgOjznLIxKFgTgVGjYT8Ebh9h7ZSCCfqoldi6rdywJmZUbFu5PIV3lJXW7S?= =?us-ascii?Q?SK+7RN05VXDlNGPcgYsNn99uQOoGMe7bvncv+Eto+N0RohDhXJGJu8CmvOd5?= =?us-ascii?Q?WJdUkFB/TFh6a8EZSeP18PXXkrGYdaZ3EtgSuo8jAEviLCVoTtsMId8LYken?= =?us-ascii?Q?c9PqkcimGtFT1pWN36Ny0xAgNLuzKVbCQItVR3niFz5wDtie83m/jxaoEttc?= =?us-ascii?Q?vQpdwozopA47PYj7GdU2s7KmTsU4ebHfu4WZnTCEQlT4oJpgH8LSVNdjOnA2?= =?us-ascii?Q?FpQSeU5mAb1v6PbrrF9fLmImQ2KevaeY54I+HA0Bsi0VWNsLjNMYzdWvv+C0?= =?us-ascii?Q?zZ2jGnvhYW9sTS9kzpiljMO0InwBQ7IfV9+HiKeFBCGRqMM82xd2wd+ukhvs?= =?us-ascii?Q?EdOUSL+ieAXweahpUuLuPRLn5d2IJeoS+CQdBdSwoYtmAzoq7ZVtQEMWQx5B?= =?us-ascii?Q?mDPPq7NyBztvy543gnyGaZAWPVQgczWCPrvP1/qsmA5nenWA7y1jUhDEyGSL?= =?us-ascii?Q?zJuX9CmnqPFfxPMjlmf+A+V/7PTy6au8y9pOkKB5oIkUDeWcruPa02IgNU0k?= =?us-ascii?Q?gKbsFJ0DMrBz7kM59ORxGgHHLXMxvddHHnsq+t5Oj0Fi3WI0SuxMAjTe3mlv?= =?us-ascii?Q?gxmJAe4Q6WYjmgIb0gZumDwGgXxfaxobhiTGqXnGJ+NClPxaYEM4H8My5DRy?= =?us-ascii?Q?rlK/+5yZ0BxJuuu6jgmRM6fVl77Epa/U69hix1bEJCeRo/EFv6VK+s6XgeNF?= =?us-ascii?Q?qwXTL3xAOWnEaIxi+AZa45pWyc1BchgZggR76cQqbNrJwk7tiPJhzudU+zk6?= =?us-ascii?Q?5gb/+cevQHOZw764iBYL4HKsCH2GqrocbwyhfpxhBA+ywHBRAkYUf0Q1wgvM?= =?us-ascii?Q?fA6Y3Pt3Pif3esaFyCefRUsvDuOWjQLwdLnYrZRlRH0g1bjlJtAkwgE3H2Hc?= =?us-ascii?Q?8xInIiXhF03OEmS/lI6Da6gmTDxyQiMtdhDuvDFE05GDjDpuaoUiDe+v8t2m?= =?us-ascii?Q?/+nKS7cPIxO+W2ecadwlZvKmD2dmNKI+nJYV/64SNdlyFCJQ/JLboCJM8NEI?= =?us-ascii?Q?8NU7r7VZ81dBtWHYDjiH7rAKecmuFbMPkpIgO4HbuNlSMhOk79zxjZJxqIPY?= =?us-ascii?Q?8KhwFVMe6/la1/XYfaI+cZBAr6Qr2vqZwAlJnrkriK5yGovsZ23tjjGu0tQT?= =?us-ascii?Q?NtZzvvo8n5UvJjP8vuCW0Bxshza6QNzJNgcv/TWgKtqJ45PeDyb+JilcpI2b?= =?us-ascii?Q?43T1MHU6dVGjA3E3nthyMGNdAYtG6xBz6lVOqfChs1hf8mtnyUnzgY7fXunV?= =?us-ascii?Q?E/LvSTOKGyAVQOjYNO33iXqcdW3r0SkAOFecqlYXLSUBeJFmzGRWDw/WO3m8?= =?us-ascii?Q?RtFetxjRdCQBw94vABy/xp3rvaTTuMRZ4BHgoggt8yMeyqRbzF+LInIc/BEs?= =?us-ascii?Q?5ColKAvvCVAHo8zAeFSYtH2blUftrYx6Qnxd?= X-Forefront-Antispam-Report: CIP:216.228.117.160;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.nvidia.com;PTR:dc6edge1.nvidia.com;CAT:NONE;SFS:(13230040)(1800799024)(376014)(36860700013)(82310400026);DIR:OUT;SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jul 2025 17:27:12.7295 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 3472547e-0517-4209-0f03-08ddb98daeb0 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.117.160];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: MWH0EPF000971E5.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB8366 Content-Type: text/plain; charset="utf-8" Using the new DMA dev helper API, there will be an error on buffer binding if the device does not support DMA. Previously this went through and was returning success event if the mappings were not done. Only a warning was printed. Signed-off-by: Dragos Tatulea --- net/core/devmem.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/net/core/devmem.c b/net/core/devmem.c index b3a62ca0df65..c6354b47257f 100644 --- a/net/core/devmem.c +++ b/net/core/devmem.c @@ -183,6 +183,7 @@ net_devmem_bind_dmabuf(struct net_device *dev, { struct net_devmem_dmabuf_binding *binding; static u32 id_alloc_next; + struct device *dma_dev; struct scatterlist *sg; struct dma_buf *dmabuf; unsigned int sg_idx, i; @@ -193,6 +194,13 @@ net_devmem_bind_dmabuf(struct net_device *dev, if (IS_ERR(dmabuf)) return ERR_CAST(dmabuf); =20 + dma_dev =3D netdev_get_dma_dev(dev); + if (!dma_dev) { + err =3D -EOPNOTSUPP; + NL_SET_ERR_MSG(extack, "Parent device can't do dma"); + goto err_put_dmabuf; + } + binding =3D kzalloc_node(sizeof(*binding), GFP_KERNEL, dev_to_node(&dev->dev)); if (!binding) { @@ -209,7 +217,7 @@ net_devmem_bind_dmabuf(struct net_device *dev, =20 binding->dmabuf =3D dmabuf; =20 - binding->attachment =3D dma_buf_attach(binding->dmabuf, dev->dev.parent); + binding->attachment =3D dma_buf_attach(binding->dmabuf, dma_dev); if (IS_ERR(binding->attachment)) { err =3D PTR_ERR(binding->attachment); NL_SET_ERR_MSG(extack, "Failed to bind dmabuf to device"); --=20 2.50.0 From nobody Wed Oct 8 03:47:24 2025 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on2064.outbound.protection.outlook.com [40.107.236.64]) (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 CB8C5309DD2; Wed, 2 Jul 2025 17:27:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.236.64 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751477242; cv=fail; b=Myh0JhnoU2YUGVvXYJvTsfWAYjNIDJjqWj4dxVUsRQREihL1YtEH9E7oVTQ6i32O9UUtl+srlPNc0oRGrNFGjCpiXI9ie5W2EPyANaGa2IefJ2Kb4lxL2UGcDs1KLLZ+ha9pHAemLhZj8dWi6iM6W6KyNuVVvSNsHa3dLp1vI+c= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751477242; c=relaxed/simple; bh=wwtrxLCh6Dp5MBqnHKZ5FE1GcqmzM6UW81/n6leaRGk=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=VcsnHQca/eRRbPF/UA1Lwu1wX1ssimyQ44iZ6MfoeJevRIsfER7mTL76q2l03Nyy+NHKE6VwX4ovLVnsu7DNGPaAwvOIXM39iJR0W97Fqiu8wylCv5e8sQnd8yEU/hVJvN6/mffRIdXGOwnQTUfndGgGWLjNMB93X3jd0YVXC1o= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=l5kYlbyL; arc=fail smtp.client-ip=40.107.236.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="l5kYlbyL" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=qfa7MtClBrt4pcYDRY6oAKmtf7RqIxcgoYFcTyDo/u1d2up4vJwUbbWY278t5MgQtsXEfmGMSjp+9rstYGwOFAQQCwxAvX0fjOHzTQ3bXVBPmJ5p8O9TDY4n0Tr3vnpYcs3NM2yLpf5D+8gKsgA+PBG9Fainvii5LvtLVP1im+xMyTuRKNHQFiI96PgVeAElv+7jdnyLSv97UK4/gKW9ROVtlyxAtHQRKk1S/E33QcdHE0h2hjwE0Ztx9Hcbcrc8bdsgLrirtiFNN9mJRH4ngOm680Agk3ZeraEG9W+0HmrwngFDGYrQ0kSQCA7JzLIMSkeKG/wsy09/L3b8IfSSqA== 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=uhFyP043ZG9z3x0YFAHbRvJpMUALxWGlb2nuEudxRxA=; b=VTZnrkbuARA7cspx6l3KkPO3Ku7VMlGYNcL/t5tQOSJf2cQZXgOxdZS2N6rLv/T+dCEnMa729n1DElylpg1rr2NYwc5u4+P6NBmj3GQ0vJsdsewrVGl6cDoFTYYWELkW1tLxADqI07cKne4UrPX/pYlMXoshY+ljUiKdPp5LY7hjYI4tllF4tbVv7ixfPJTFsi2V7/WdQoGP2r44JTcKjKHZPnaK5eOT/tAFEf1dGO4gVb9oq9zWwp5+Jk80xq7T126M9JzvwmW7jStzpegVoA2UPU0WxHG4ErWjFwWVJgWC/iDcmA7KdEUwcUASWwckzJd4kOcNIRtUrO8Mxf2APw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=google.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=uhFyP043ZG9z3x0YFAHbRvJpMUALxWGlb2nuEudxRxA=; b=l5kYlbyLDD2wGgpmiQkP59n4o0GGo+/fjHuXDF/mTUa+P/8hIqh4ysYjtlKsn2OcK2DdmViTeKwvijC99s+zEikF/qIYVZCDz6QYoK7p/TN3UiVOU87KDk7sqapcT/ZpgZaPh1sl+GxIKYKf3v2I14k+i6tzy3JhrVnZsxExiTqyaA5pkA+06yWHQajIUkrVbrIPI5Wlq1n8vnlPzzsAlQ1dS9yxVx8P6pWsTYBa8Ho6Z2aRsu01paxu6cbDzBlQiVielYWjNXq0iYQW6c/R6cUv9VWNHSWiT4pibHSV0xIx3kzwxbfbHVAdaz2wPYC+Pu6+TVgNEBjI6rFsPPJLFw== Received: from MW4PR02CA0008.namprd02.prod.outlook.com (2603:10b6:303:16d::27) by MN2PR12MB4128.namprd12.prod.outlook.com (2603:10b6:208:1dd::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8901.19; Wed, 2 Jul 2025 17:27:17 +0000 Received: from MWH0EPF000971E5.namprd02.prod.outlook.com (2603:10b6:303:16d:cafe::22) by MW4PR02CA0008.outlook.office365.com (2603:10b6:303:16d::27) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8901.21 via Frontend Transport; Wed, 2 Jul 2025 17:27:17 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.160) by MWH0EPF000971E5.mail.protection.outlook.com (10.167.243.73) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8901.20 via Frontend Transport; Wed, 2 Jul 2025 17:27:17 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Wed, 2 Jul 2025 10:27:03 -0700 Received: from rnnvmail205.nvidia.com (10.129.68.10) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.14; Wed, 2 Jul 2025 10:27:02 -0700 Received: from f42.dev-l-178 (10.127.8.9) by mail.nvidia.com (10.129.68.10) with Microsoft SMTP Server id 15.2.1544.14 via Frontend Transport; Wed, 2 Jul 2025 10:26:58 -0700 From: Dragos Tatulea To: , , Saeed Mahameed , Tariq Toukan , Leon Romanovsky , Andrew Lunn , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni CC: Dragos Tatulea , , , , Subject: [RFC net-next 4/4] net/mlx5e: Enable HDS zerocopy flows for SFs Date: Wed, 2 Jul 2025 20:24:26 +0300 Message-ID: <20250702172433.1738947-5-dtatulea@nvidia.com> X-Mailer: git-send-email 2.50.0 In-Reply-To: <20250702172433.1738947-1-dtatulea@nvidia.com> References: <20250702172433.1738947-1-dtatulea@nvidia.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-NV-OnPremToCloud: AnonymousSubmission X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MWH0EPF000971E5:EE_|MN2PR12MB4128:EE_ X-MS-Office365-Filtering-Correlation-Id: 27781aa9-70f9-4935-540c-08ddb98db197 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|36860700013|1800799024|82310400026|7416014|376014|921020; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?iC4q1Wx0UCeMQrFaXzwvFpoVBl4YIORitnCyCzSDrZJ8yl6P0AjXodCc7I5W?= =?us-ascii?Q?JibGX9ndedUQW78k1plPxUR0b/CbImOELpnpLFqxRl8V/6nm+CJlbIBJWxWU?= =?us-ascii?Q?GeDsYSOTecp45UJ/ZfLc0/eW6SEqw5YZkCVgRJBjxbFHn3fpFazOa761qf6j?= =?us-ascii?Q?GISFbSlbsBQ9XlFnkJd9KjzylRJhxQBEoIV6PDkzUOPdHpEcJ7535hwNHsSF?= =?us-ascii?Q?atI41q41VJWSLLUP9eyLhflo4dLFDuLpkkWtDKOeS98NGQp9LEehXNEqNnO3?= =?us-ascii?Q?fN15uhWTX0XgKDHVdF8FynRTLQ1/vcCCE7e0gurmkYhCssjYIOUjbzQAc5TT?= =?us-ascii?Q?xMyu1RXfQ0pTWxbwTQIuXgKZg+HbcH5a8PkOIjE9ipzf0pMlgXNWIyqh9SUK?= =?us-ascii?Q?OITl3vMPrPgqESmpehoMgBjBUxO7LZu5ulUlYz2aj8xMlH+MmacYUGNOrOF5?= =?us-ascii?Q?ahvrBaeDKJS5IHZKSkEkWFbXw/fzWVOgES7RcQttawQpk+UFPJt1h/LKOVdW?= =?us-ascii?Q?OHPm4+KTHn1K6WMKflrN91vueJplLJZWnNBvpj/foQ3vLsh8eosbon2BcK+t?= =?us-ascii?Q?+TGHYY2Y9CsZhJgYL6XBkl/n/HyLM4AQW7eyzGVdclZw3qfMzyuaVallYLCP?= =?us-ascii?Q?xB+2iAdIdtczrlOKL9L0TmdXmY64F31y2sEcm8beBBLzxecbCWDZVzhx9iI4?= =?us-ascii?Q?yrhxLvd92f4sw1TNc5uI0yW8nRBtMnyKMzx5dJPMS2og/Bru5qduZbXMUpCG?= =?us-ascii?Q?hBUhDyQHa+qItUUBD++9P0CV7ytfWgkLG6+7FPPn4xnG+OQBNaKQeVFYVE4W?= =?us-ascii?Q?iG3y411XGbUIsAIt2lzlNyYVdNnbU1XH+4oRs9fLdAy6HytFt4shgwfnrTUG?= =?us-ascii?Q?g6EbuaMNANUjux3P0danN20ARo6QyjVhDbgkT+XmYHyQ86md1q4LnzkMp3eF?= =?us-ascii?Q?QbbvCaZ0edALeBEJeDC7N3ryP53jurUYKiUXC00d2a1F24yRWI2TMmtp23hg?= =?us-ascii?Q?CsKQ7UIKzoMdCnM7aLA4b5Btjr6d/0Jv3BbpZyRwdba0vWrDREV5gf6iBj4S?= =?us-ascii?Q?B2qnPtt2HkmLLQO7dSKbGXc7zxR6PbwmbBKho7v5S93EfIlT5reVcQWUeP6w?= =?us-ascii?Q?5704QtryTPNawv9mKnFSExnv+KNhIOduValpv7E8imOgcodl4u+ByYLrigXM?= =?us-ascii?Q?+WX1FlWzw7F605jlr+labJbbnCNLp1bOfWrvhoPmT6CN/fes+KJOD+TlOJ7U?= =?us-ascii?Q?RRZURpQv7Ct2LZzfJDaPkCQd57UHUG//c/tAbBltKSQ5vV8yS4yA5tXteFCj?= =?us-ascii?Q?EnVkHrrFPM0R68qzpK+4Q3Zr4mCjfBkiQnlitnCi/biMzTGOkeTBkuDaeouV?= =?us-ascii?Q?qHh8z1RxY61ngHbTUHMMtw0ve0wV4EnVZbUPo+9iBVG5XT17OFhaxWFxc/Wj?= =?us-ascii?Q?5bhyZZuDTVeUNLoT8aD9WpJymHKEzWkiFX+b+agX7Jv5zom3d9U5qsTs5bM2?= =?us-ascii?Q?DW4pBsVPVjdhAJKpBshJ/+Wch4rVGGRu6p0kLBgzm0ZekVSopdh7na3BwQ?= =?us-ascii?Q?=3D=3D?= X-Forefront-Antispam-Report: CIP:216.228.117.160;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.nvidia.com;PTR:dc6edge1.nvidia.com;CAT:NONE;SFS:(13230040)(36860700013)(1800799024)(82310400026)(7416014)(376014)(921020);DIR:OUT;SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jul 2025 17:27:17.6041 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 27781aa9-70f9-4935-540c-08ddb98db197 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.117.160];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: MWH0EPF000971E5.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4128 Content-Type: text/plain; charset="utf-8" An SF has an auxiliary device as a parent. This type of device can't be used for zerocopy DMA mapping operations. A PCI device is required. Use the new netdev dma_dev functionality to expose the actual PCI device to be used for DMA. Always set it to keep things generic. Signed-off-by: Dragos Tatulea --- drivers/net/ethernet/mellanox/mlx5/core/en_main.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_main.c b/drivers/ne= t/ethernet/mellanox/mlx5/core/en_main.c index e8e5b347f9b2..c4e45205fba4 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/en_main.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_main.c @@ -5841,6 +5841,9 @@ static int mlx5e_nic_init(struct mlx5_core_dev *mdev, /* update XDP supported features */ mlx5e_set_xdp_feature(netdev); =20 + /* Set pci device for dma. Useful for SFs. */ + netdev->dma_dev =3D &mdev->pdev->dev; + if (take_rtnl) rtnl_unlock(); =20 --=20 2.50.0