On Tue, Oct 29, 2024 at 01:14:28PM +0000, Daniel P. Berrangé wrote:
On Tue, Oct 29, 2024 at 01:09:00PM +0000, Andrea Bolognani wrote:
> On Tue, Oct 29, 2024 at 12:46:55PM +0000, Daniel P. Berrangé wrote:
> > A key difference that is probably relevant is that netbsd is
> > using an e1000 NIC in QEMU, while openbsd is using a virtio-net
> > NIC. At least when created by virt-manager.
> >
> > AFAIR, QEMU's magic checksum offload only happens for virtio-net,
> > so presumably our rules are incompatible with non-virtio-net NICs
> > in someway.
>
> Yes, that's it! The GNU/Hurd and Haiku guests are also using e1000,
> since virtio drivers are not available there; moreover, if I switch a
> random Linux guest from virtio-net to e1000 I can reproduce the issue
> there as well.
Incidentally, I think this has crossed the threshold where the cure is
worse than the disease.
We cannot ship the forthcoming libvirt release with a checksum "fix"
that breaks all usage of NICs that aren't virtio-net, as that guarantees
brokeness for all historical OS.
If we can't quickly find a way to improve this, I think we need to
revert (or disable) the checksum zero'ing fix for this release and
spend more time investigating it.
Agreed.
Going back to the drawing board in a sense, have we figured out why
FreeBSD's DHCP client is unhappy with the previous arrangement? It
seems to me that fixing it might be the most sensible course of
action.
--
Andrea Bolognani / Red Hat / Virtualization