From: Jakub Kicinski <kuba@kernel.org>
To: Gal Pressman <gal@nvidia.com>
Cc: Tariq Toukan <tariqt@nvidia.com>,
Andrew Lunn <andrew+netdev@lunn.ch>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Paolo Abeni <pabeni@redhat.com>,
netdev@vger.kernel.org, ttoukan.linux@gmail.com
Subject: Re: MLX driver for host-to-ARM communication
Date: Thu, 27 Aug 2026 08:15:29 -0700 [thread overview]
Message-ID: <20260827081529.63513668@kernel.org> (raw)
In-Reply-To: <0444bbb8-39e2-40f8-b3c2-a5851e5bfa70@nvidia.com>
On Tue, 25 Aug 2026 11:24:08 +0300 Gal Pressman wrote:
> On 13/08/2026 18:14, Jakub Kicinski wrote:
> > This will be nacked. We nacked multiple such drivers over the years.
> > Most recent one not more than a year ago.
> >
> > If you model the device as a network node it should be reachable via
> > the normal networking path. If it's a control channel - explicit
> > control channel APIs should be built, rather than doing pretend
> > networking.
> >
> > Every IPU vendor gets to this sort of design sooner or later because
> > it's an easy hack when running a user space SDK. nVidia has clearly
> > turned from upstream work to pushing your DOCA stack on all customers.
> > No matter how many shameful lies y'all told about fwctl not being DOCA
> > related. This is just a next step. But please commence your bullying
> > campaign. What do I know, right?
>
> There are some unrelated accusations here, I'll focus on the technical
> side of things.
>
> No DRAM NIC (NODNIC) is not a new interface designed for BlueField 4 or
> DOCA. It exists in our NIC since 2015, and implemented in other OSs
> drivers long before DOCA existed.
>
> It is a lightweight NIC PF intended for simple packet transmission with
> a small memory footprint.
> It sends and receives ordinary Ethernet frames using SQs, RQs, CQs, and
> EQs. There is no private encapsulation or command protocol. You can
> connect this PF to any other NIC on the other side of the wire and it
> will work.
>
> On BlueField 4, the firmware connects the host side NODNIC PF to a peer
> PF on the DPU side using ordinary vport forwarding rules. The Ethernet
> packets are forwarded unchanged, both sides are Linux netdevs.
>
> The purpose of this is to provide network connectivity between the host
> and the DPU OS, particularly when the DPU’s OOB port is not connected.
> Standard networking applications such as ssh and PXE use it.
>
> To be clear, there is no hidden FW involvement or handling of the
> packets, these packets are forwarded as is between both sides.
> It makes sense to use a networking driver for networking purposes, I
> don't see how control channel APIs are better for this.
I understand. Having a full networking driver for such point to point
communication between device FW (/OS running on the device, doesn't
matter) complicates the system topology, config/init and mixes very
non-networking requirements with networking. It's a lazy design which
leads to poor, vendor-specific user experience. The NFP had a similar
thing, it obviously never made it upstream, but I'm very familiar with
the implications.
prev parent reply other threads:[~2026-08-27 15:15 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-13 8:33 MLX driver for host-to-ARM communication Tariq Toukan
2026-08-13 15:14 ` Jakub Kicinski
2026-08-25 8:24 ` Gal Pressman
2026-08-27 15:15 ` Jakub Kicinski [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260827081529.63513668@kernel.org \
--to=kuba@kernel.org \
--cc=andrew+netdev@lunn.ch \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=gal@nvidia.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=tariqt@nvidia.com \
--cc=ttoukan.linux@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.