-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
[Bug] Latest 6.1 guest kernel config results in kernel panic when booting VM #4881
Comments
Is there any progress on this? |
Hi @kanpov, This issue appears to happen because we build from Amazon Linux which has some patches that allow ACPI to be enabled without PCI. To resolve this you can set A link to our docs on booting with acpi on x86-64 can be found here. Thanks |
The bare minimum to fix this would be to mention your usage of Amazon Linux as a requirement for these guest kernel configs. Even with that fixed, I doubt it's a good idea to have what are advertised as general-purpose kernel configs only work with this specific kernel. |
Hi! I just cloned the amazon limux repo, checked out
(I got the same result even if I did NOT edit the Getting mainline linux had similar issues, I was hopeful that cloning amazon linux would do the trick.
I must be missing something!? Edit: Think I got this working, I believe I missed |
CONFIG_PCI was the whole problem here, with only amazon linux supposedly not needing it, yet it seems like it still does. I don't think Firecracker should promote dysfunctional guest kernel configs in its repo. |
Hi @kanpov, thanks for reporting this. So, our guest configs are supposed to be used only with the guest kernels from AmazonLinux but only with specific tags from there, like this one: https://github.com/amazonlinux/linux/tree/microvm-kernel-6.1.102-1.182.amzn2023 (tags starting with We should be doing a better job documenting that. I will open a PR to amend this. In the meantime, if people want to build a mainline kernel, they should use whatever the defconfig is for their kernel and make sure they follow the instructions here: https://github.com/firecracker-microvm/firecracker/blob/main/docs/kernel-policy.md. I had tried these in the past (when working on the ACPI transition) and they worked. If you find any problem with this set of instructions please let me know. |
Describe the bug
The x86_64 6.1 guest kernel config as it is currently on master after the 9157a0c commit, runs seemingly okay with the latest 6.1 kernel (6.1.114), but produces an unusually larger vmlinux (38MB instead of 29MB), and when booting a VM with it the following happens:
To Reproduce
.config
make -j N vmlinux
in the dir with N being the number of cores, I personally used 12 as I hit this bug but I doubt this mattersvmlinux
anywhere used to start Firecracker VMsExpected behaviour
Everything would build correctly and the VM would start.
Environment
Additional context
Even though the output is the same as #4816, I'm quite sure this isn't the same issue as I'm not using
noapic
as a kernel boot arg (mine areconsole=ttyS0 reboot=k panic=1
) and adding/removing it doesn't change anything.HOWEVER! the way I pinned this issue down to that specific commit is that if you take the commit right before that problematic one and open the relevant guest kernel config in it: https://github.com/firecracker-microvm/firecracker/blob/86a2559b26a4b9a05405aeaa58bab0f7261d71bc/resources/guest_configs/microvm-kernel-ci-x86_64-6.1.config
And do the same steps with that config, everything works perfectly and a 29MB working vmlinux is produced.
Checks
The text was updated successfully, but these errors were encountered: