I have applied the PREEMPT-RT patches on my jetson nano. When I run ‘uname -a’, the result is: Linux jetbot 4.9.201-rt134-tegra #3 SMP PREEMPT RT Wed Nov 30 02:05:35 PST 2022 aarch64 aarch64 aarch64 GNU/Linux
But the problem is, I am not able to boot my VMs as I receive the following error messages when running them with qemu+KVM:
I have no way to comment further, but from what I can see that point is hit because coding for KVM itself was not yet complete. By this I mean that the line of code says to only run atomic, and not be preemptable during run of that block of code, but it is still preemptable. This is the block of code:
77 /**
78 * kvm_arm_get_running_vcpu - get the vcpu running on the current CPU.
79 * Must be called from non-preemptible context
80 */
81 struct kvm_vcpu *kvm_arm_get_running_vcpu(void)
82 {
83 BUG_ON(preemptible());
84 return __this_cpu_read(kvm_arm_running_vcpu);
85 }
If I remove the BUG(preemptible()) check in KVM (which I have read is redundant), I can init my virtual machines without any problem!
Thank you so much for your help.