-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Some findings. #1
Comments
Which distro and version are you using? I've been testing with both a 4.15 and a 4.20 kernel under Ubuntu 18.04 and haven't had issues with either yet. I'll do some testing when I get a chance with the oldest longterm 4.x version which as of today is 4.4.176. |
Running debian testing (buster) now which uses kernel 4.19.0. Just running make gives: I have not done a kernel build, only installed the src. So maybe some autogenerated file is missing on my system. |
same error on a 4.20.13 debian kernel commenting out this line: .driver.pm = &virtio_pci_pm_ops, helps. It appears that the function is not defined. `~/virtio_vmmci$ make ` |
I've added some more macro if/defs in a commit to my
Should also fix the |
next works for me except the typo in virtio_pci_common.h:139 LINUX_KERNEL_VERSION --> LINUX_VERSION_CODE |
@netzbasis next works for me as-is. I do not see the typo mentioned by you. 4.9.0-6-amd64 kernel on devuan p:~/virtio_vmmci-next$ make |
@voutilad what do you think of removing this message? [ 11.588721] virtio_vmmci: detected drift greater than 5 seconds, synchronizing clock and, also What do you think of doing this every second? Thanks for the quick fix |
@netzbasis Typo is fixed on @joe9 I'm going to be working on cleaning up all the logging and having a As for the drift setting, now that The current You might notice that the RTC values output via If I'm going to achieve parity with |
@voutilad Thanks for the explanation.
Yes, this is what is happening on devuan (no systemd, using sysvinit) vm's and unfortunately this bandage is the only solution that works. ntpd cannot handle this except at startup. |
@joe9 are you setting |
@voutilad I cannot set clocksource=tsc. I tried to set the 'clocksource=tsc' as a kernel boot parameter. On boot, the system still switches to refined-jiffies. Below is what dmesg says about it.
|
OK for merging next branch. It works great. |
@netzbasis thanks, I'll merge shortly. Thanks for help testing! I never thought virtio would have so many changes in the v4.x series. @joe9 I've seen that on kernels after v4.15, hence in my v4.20 fork I reverted the tsc code (mostly in I haven't had the time to investigate what is going on with tsc after v4.15, but for now I've seen no issues using my 4.20.12 kernel. Something in how the kernel tries to calibrate tsc fails and it appears the kernel deems it unreliable and falls back to jiffies which causes the drift. You can either try using my kernel fork if you need a more recent (i.e. 4.20) kernel OR try using the |
@voutilad Now, I am using the next branch on 4.9.0-6-amd64 Earlier, when virtio_vmmci did not work on earlier kernels, I was trying it on 4.20.13 kernel. Thanks for the tip on tsc=reliable. It does not seem to help though. Any other ideas?
|
@joe9 only thing I can think of could be related to if you're running OpenBSD 6.4 or a recent snapshot. Plus, there could be variations in Intel (vt-x) vs. AMD (svm) on your host machine. |
Closing because works great for me. |
As I wrote on Twitter, does not compile for 4.9 kernel, 4.19 works when I "#undef CONFIG_PM_SLEEP" in virtio_vmmci.h.
VIRTIO_F_SR_IOV in virtio_pci_common.h was introduced with 4.18, see https://elixir.bootlin.com/linux/v4.18-rc1/ident/VIRTIO_F_SR_IOV
The text was updated successfully, but these errors were encountered: