Opened 2 years ago
Last modified 22 months ago
#18177 new bug
Problem with e1000 under Qemu-KVM
Reported by: | jackburton | Owned by: | nobody |
---|---|---|---|
Priority: | normal | Milestone: | Unscheduled |
Component: | Drivers/Network/ipro1000 | Version: | R1/beta4 |
Keywords: | Cc: | ||
Blocked By: | Blocking: | #18202 | |
Platform: | All |
Description (last modified by )
There seems to be some network issues under KVM with the e1000 driver (NAT). I can ping, but when trying to update or refresh repositories with
pkgman refresh or pkgman update
the process hangs there, waiting.
Using virtio works, instead, on both x86_gcc2 and x64
rev56673
Change History (11)
comment:1 by , 2 years ago
Description: | modified (diff) |
---|
comment:2 by , 2 years ago
Description: | modified (diff) |
---|
comment:3 by , 2 years ago
Component: | Network & Internet → Drivers/Network/ipro1000 |
---|
comment:4 by , 2 years ago
comment:5 by , 23 months ago
Blocking: | 18202 added |
---|
comment:6 by , 23 months ago
For reference, this happens when you use the "q35" machine (modern chipset) on some QEMU versions, and the workaround is to add "-nic model=e1000" to your QEMU command line.
comment:7 by , 23 months ago
I think the related FreeBSD bug is https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=243640 ?
comment:8 by , 23 months ago
No, that is about passthrough devices, not emulated devices.
The e1000e device used to work on QEMU in Haiku. According to the logs, the upgrade to FreeBSD 13.1 is what broke it: hrev55961.
I recall at the time I did the previous upgrade to that one, I ran into the same problem, and only upgraded to the latest release before the problem started (apparently FreeBSD 13.) I think I might have even tracked down when things broke; I think it had to do with https://github.com/freebsd/freebsd-src/commit/450c3f8b3d259c7eb82488319aff45f1f6554aaf or the commit just before that affecting the same code. You could probably revert some of those changes in Haiku and see what happens.
comment:9 by , 22 months ago
I can confirm that reverting that FreeBSD commit I linked in the previous comment fixes the problems in QEMU with e1000e. But that does not really answer the question: is FreeBSD's code wrong (i.e. is this also broken with FreeBSD on QEMU)? is Haiku's compatibility layer and/or our MSI-X handling somehow wrong? or is QEMU wrong?
Since the FreeBSD commit specifically references hardware problems that users reported, I don't think it's wise to revert it without some testing with an "e1000e" bare-metal device, at least.
comment:10 by , 22 months ago
Can we get the attention of involved FreeBSD developers somehow? Maybe they can help us?
comment:11 by , 22 months ago
Well, first we should establish whether or not this is a Haiku-specific problem?
Please check what network device you have set. This is a known problem with "e1000e" even on FreeBSD, I think.