From: "Michael S. Tsirkin" <mst@redhat.com>
To: Weqaar Janjua <weqaar.janjua@packetfive.com>
Cc: qemu-devel@nongnu.org, kraxel@redhat.com,
peter.maydell@linaro.org, pierrick.bouvier@oss.qualcomm.com,
jasowangio@gmail.com, pbonzini@redhat.com, farosas@suse.de,
lvivier@redhat.com, marcel.apfelbaum@gmail.com,
peterx@redhat.com, lizhijian@fujitsu.com,
odaki@rsg.ci.i.u-tokyo.ac.jp
Subject: Re: [PATCH v3 0/6] hw: Add Cnuas virtual devices
Date: Fri, 30 Oct 2026 19:19:05 -0400 [thread overview]
Message-ID: <20261030191556-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20261029194227.2735464-1-weqaar.janjua@packetfive.com>
On Thu, Oct 29, 2026 at 07:42:24PM +0000, Weqaar Janjua wrote:
> On Thu, Oct 29, 2026 at 01:50:11PM -0400, Michael S. Tsirkin wrote:
> > Hmm wait a second. I don't understand. Isn't it a physical device you
> > are emulating? Why is it using the Red Hat IDs?
>
> No, it is not a physical device. There is no CnuasNIC or CnuasGPU
> hardware; both exist only as virtual devices, the QEMU device models
> in this series. Think of CnuasNIC as veth or rxe for RDMA, but
> presented to the guest as a PCI device so the full driver, verbs and
> RDMA CM path runs unmodified. The Cnuas project (cnuas.io) emulates
> the rest of the RDMA subsystem around it, including a RoCEv2 and
> InfiniBand switch. CnuasGPU is the same idea for an accelerator.
>
> The register interfaces are defined by the models themselves and
> documented in docs/specs/cnuas-vnic.rst (patch 2) and
> docs/specs/cnuasgpu.rst (patch 5), with more detail in the
> datasheets at:
>
> https://cnuas.io/cnuas/docs/datasheets/CnuasNIC_Datasheet/
> https://cnuas.io/cnuas/docs/datasheets/CnuasGPU_Datasheet/
>
> So this is the same situation as other QEMU-specific devices in the
> 1b36 range, for example pvpanic-pci (1b36:0011) and the emulated UFS
> host controller (1b36:0013), which also have upstream Linux drivers.
> That is why I asked Gerd for IDs from the QEMU range. If we were to
> build hardware, it would use our own PCI vendor ID, not 1b36.
>
> The "RDMA network adapter" wording may have suggested otherwise. It is
> an RoCEv2 adapter in the sense that a Linux guest sees a normal RDMA
> device, but the wire side is a socket to a user-space switch process,
> not a real NIC. I can make "virtual" more explicit in the commit
> messages and docs if that helps.
>
> Thanks,
>
> Weqaar
I see. Then a simple way for you to get some eyes on this, and a path
towards upstreaming, could be to try and add this rdma functionality
in the virtio spec.
Interface changes might be required during the standardization
process.
--
MST
next prev parent reply other threads:[~2026-10-30 23:19 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-29 20:23 [PATCH v3 0/6] hw: Add Cnuas virtual devices Weqaar Janjua
2026-09-29 20:23 ` [PATCH v3 1/6] pci: Add device ID for CnuasNIC Weqaar Janjua
2026-09-30 7:00 ` Gerd Hoffmann
2026-09-29 20:23 ` [PATCH v3 2/6] hw/net: Add Cnuas virtual network adapter Weqaar Janjua
2026-09-29 20:23 ` [PATCH v3 3/6] tests/qtest: Add Cnuas virtual network adapter tests Weqaar Janjua
2026-09-29 20:23 ` [PATCH v3 4/6] pci: Add device ID for CnuasGPU Weqaar Janjua
2026-09-30 7:00 ` Gerd Hoffmann
2026-09-29 20:23 ` [PATCH v3 5/6] hw/misc: Add CnuasGPU virtual accelerator Weqaar Janjua
2026-09-29 20:23 ` [PATCH v3 6/6] tests/qtest: Add CnuasGPU tests Weqaar Janjua
2026-10-16 15:32 ` [PATCH v3 0/6] hw: Add Cnuas virtual devices Weqaar Janjua
2026-10-27 8:07 ` Weqaar Janjua
2026-10-27 10:46 ` Michael S. Tsirkin
2026-10-29 11:57 ` Weqaar Janjua
2026-10-29 17:50 ` Michael S. Tsirkin
2026-10-29 19:42 ` Weqaar Janjua
2026-10-30 23:19 ` Michael S. Tsirkin [this message]
2026-10-31 12:05 ` Weqaar Janjua
2026-10-31 17:54 ` Michael S. Tsirkin
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=20261030191556-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=farosas@suse.de \
--cc=jasowangio@gmail.com \
--cc=kraxel@redhat.com \
--cc=lizhijian@fujitsu.com \
--cc=lvivier@redhat.com \
--cc=marcel.apfelbaum@gmail.com \
--cc=odaki@rsg.ci.i.u-tokyo.ac.jp \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=peterx@redhat.com \
--cc=pierrick.bouvier@oss.qualcomm.com \
--cc=qemu-devel@nongnu.org \
--cc=weqaar.janjua@packetfive.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.