qemu/hw/net
Cindy Lu fb59288239 virtio-net: handle zero mac for a vdpa peer
Some mlx vdpa devices with kernels at least up to 5.11 currently present
0 as their MAC address.  This is because they have not been
  pre-configured with a MAC: they have a learning bridge and only learn
the MAC once guest is up.  Kernel patches and tools to allow programming
the MAC from host are being developed. For now - since these
combinations exist in the field - let's detect zero mac and just try to
proceed with the mac from the qemu command line.

This makes the guest use this MAC to send packets in turn teaching
the MAC to the card, and things work.

TODO:
report the actual MAC from QEMU commad line in the info message.
TODO:
detect that a (non-zero) hardware MAC does not match QEMU command line
and fail init.

Signed-off-by: Cindy Lu <lulu@redhat.com>
Message-Id: <20210225165506.18321-2-lulu@redhat.com>

mst: rewritten code comments, message printed and the commit log.

Cc: Eli Cohen <elic@nvidia.com>
Cc: Parav Pandit <parav@nvidia.com>
Tested-by: Adrian Moreno <amorenoz@redhat.com>
Tested-by: Sean Mooney <smooney@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2021-03-02 06:09:54 -05:00
..
can
fsl_etsec hw/net: fsl_etsec: Reverse the RCTRL.RSF logic 2021-02-10 14:50:11 +11:00
rocker Machine queue, 2020-12-23 2021-01-01 22:57:15 +00:00
allwinner_emac.c
allwinner-sun8i-emac.c net: checksum: Introduce fine control over checksum type 2021-01-25 17:04:56 +08:00
cadence_gem.c net: checksum: Introduce fine control over checksum type 2021-01-25 17:04:56 +08:00
dp8393x.c
e1000_regs.h
e1000.c Remove superfluous timer_del() calls 2021-01-08 15:13:38 +00:00
e1000e_core.c Remove superfluous timer_del() calls 2021-01-08 15:13:38 +00:00
e1000e_core.h
e1000e.c
e1000x_common.c
e1000x_common.h
eepro100.c
etraxfs_eth.c
ftgmac100.c net: checksum: Introduce fine control over checksum type 2021-01-25 17:04:56 +08:00
i82596.c
i82596.h
imx_fec.c net: checksum: Introduce fine control over checksum type 2021-01-25 17:04:56 +08:00
Kconfig
lan9118.c hw/net/lan9118: Add symbolic constants for register offsets 2021-01-12 21:19:02 +00:00
lance.c
lasi_i82596.c
mcf_fec.c
meson.build
milkymist-minimac2.c
mipsnet.c
msf2-emac.c
ne2000-isa.c
ne2000-pci.c
ne2000.c
ne2000.h
net_rx_pkt.c
net_rx_pkt.h
net_tx_pkt.c
net_tx_pkt.h
opencores_eth.c
pcnet-pci.c Remove superfluous timer_del() calls 2021-01-08 15:13:38 +00:00
pcnet.c
pcnet.h
rtl8139.c Remove superfluous timer_del() calls 2021-01-08 15:13:38 +00:00
smc91c111.c
spapr_llan.c Remove superfluous timer_del() calls 2021-01-08 15:13:38 +00:00
stellaris_enet.c
sungem.c
sunhme.c
trace-events
trace.h
tulip.c
tulip.h
vhost_net-stub.c
vhost_net.c
virtio-net.c virtio-net: handle zero mac for a vdpa peer 2021-03-02 06:09:54 -05:00
vmware_utils.h
vmxnet3_defs.h
vmxnet3.c
vmxnet3.h
vmxnet_debug.h
xen_nic.c net: checksum: Introduce fine control over checksum type 2021-01-25 17:04:56 +08:00
xgmac.c
xilinx_axienet.c hw/net/xilinx_axienet: Rename StreamSlave as StreamSink 2020-12-10 12:15:04 -05:00
xilinx_ethlite.c