Re: [RFC PATCH net-next v6 03/14] af_vsock: support multi-transport datagrams
From: Amery Hung
Date: Sun Jul 28 2024 - 17:54:18 EST
On Sun, Jul 28, 2024 at 1:40 PM Arseniy Krasnov
<avkrasnov@xxxxxxxxxxxxxxxxx> wrote:
>
> Hi Amery
>
> > /* Transport features flags */
> > /* Transport provides host->guest communication */
> > -#define VSOCK_TRANSPORT_F_H2G 0x00000001
> > +#define VSOCK_TRANSPORT_F_H2G 0x00000001
> > /* Transport provides guest->host communication */
> > -#define VSOCK_TRANSPORT_F_G2H 0x00000002
> > -/* Transport provides DGRAM communication */
> > -#define VSOCK_TRANSPORT_F_DGRAM 0x00000004
> > +#define VSOCK_TRANSPORT_F_G2H 0x00000002
> > +/* Transport provides fallback for DGRAM communication */
> > +#define VSOCK_TRANSPORT_F_DGRAM_FALLBACK 0x00000004
> > /* Transport provides local (loopback) communication */
> > -#define VSOCK_TRANSPORT_F_LOCAL 0x00000008
> > +#define VSOCK_TRANSPORT_F_LOCAL 0x00000008
>
> ^^^ This is refactoring ?
>
This part contains no functional change.
Since virtio dgram uses transport_h2g/g2h instead of transport_dgram
(renamed totransport_dgam_fallback to in this patch) of VMCI, we
rename the flags here to describe the transport in a more accurate
way.
For a datagram vsock, during socket creation, if VMCI is present,
transport_dgram will be registered as a fallback.
During vsock_dgram_sendmsg(), we will always try to resolve the
transport to transport_h2g/g2h/local first and then fallback on
transport_dgram.
Let me know if there is anything that is confusing here.
>
> > + /* During vsock_create(), the transport cannot be decided yet if
> > + * using virtio. While for VMCI, it is transport_dgram_fallback.
>
>
> I'm not English speaker, but 'decided' -> 'detected'/'resolved' ?
>
Not a native English speaker either, but I think resolve is also
pretty accurate.
Thanks,
Amery
>
>
> Thanks, Arseniy