Re: Getting ACRN to work
Shuo A Liu
That’s great.
For the Ethernet issue, ‘lspci -k’ to check if the device exists in SOS and how about the driver status? If you are using a customized kernel, make sure the related ethernet driver configured. It may be compiled as module, don’t forget put it into system filesystem(/lib/modules/).
Thanks From: acrn-users@... <acrn-users@...>
On Behalf Of Dubravko Moravski | Exor Embedded S.r.l.
Sent: Wednesday, February 19, 2020 22:57 To: acrn-users@... Subject: Re: [acrn-users] Getting ACRN to work
Hi Shuo,
Thank you, you were right, with your fix ACRN loads the Service OS on my board too.
Now I have the issue that Ethernet doesn't work (while it does in regular Clear Linux), so I can't download and configure the User OS. I'll try downloading, configuring and recompiling https://github.com/clearlinux-pkgs/linux-iot-lts2018 kernel. Is that the right one and do I need to activate some particular settings so it works well with ACRN?
Best regards, Dubravko
From:
acrn-users@... <acrn-users@...> on behalf of Shuo A Liu via Lists.Projectacrn.Org <shuo.a.liu=intel.com@...>
Hi Dubravko,
I glanced through the discussion and found it might be a similar issue that I hit today with UP2 board. My problem is that with ACRN enabled the linux kernel cannot bootup APs, without ACRN hypervisor the native kernel works well. I have a fix that posted on acrn-dev maillist several hours ago. Perhaps you can have a quick try and hope it can help. I paste it here. --- On UEFI UP2 board, BIOS startup APs and then they all go into HLT status. Then Guest OS take over and re-init the APs again. The flows from HV perspective is like: wait_event(VCPU_EVENT_VIRTUAL_INTERRUPT) -> sleep_thread -> pause_vcpu(ZOMBIE) -> sleep_thread -> reset_vcpu -> launch_vcpu -> wake_vcpu
However, the last wake_vcpu will fail because the cpu event VCPU_EVENT_VIRTUAL_INTERRUPT had not got signaled. Add signal_event before sleep_thread in pause_vcpu to make sure the vcpu thread is not waiting for event.
Signed-off-by: Shuo A Liu <shuo.a.liu@...> --- hypervisor/arch/x86/guest/vcpu.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/hypervisor/arch/x86/guest/vcpu.c b/hypervisor/arch/x86/guest/vcpu.c index 6161889..bd2d2d2 100644 --- a/hypervisor/arch/x86/guest/vcpu.c +++ b/hypervisor/arch/x86/guest/vcpu.c @@ -701,6 +701,8 @@ void pause_vcpu(struct acrn_vcpu *vcpu, enum vcpu_state new_state) vcpu->state = new_state; if (vcpu->prev_state == VCPU_RUNNING) { + /* signal_event will wakeup the vcpu's thread if it's in HLT sleep, else do nothing. */ + signal_event(&vcpu->events[VCPU_EVENT_VIRTUAL_INTERRUPT]); sleep_thread(&vcpu->thread_obj); } if (pcpu_id != get_pcpu_id()) { -- 2.8.3
Thanks shuo From:
acrn-users@... <acrn-users@...>
On Behalf Of Dubravko Moravski | Exor Embedded S.r.l.
Hi Zide,
1) X2APIC I see that it's not mentioned anywhere in ACRN log (and I suppose it should be), but it seems to be enabled somehow in non-hypervised Linux:
Our BIOS does not have a GUI setting to manually enable it, and we couldn't find where to explicitly enable it in source code. It's mentioned at many places; though not in DMAR table. Can we conclude from the log above that it's ok, or we still need to find a way to enable it in ACRN or BIOS?
2) Linux logs I'm working on this and will report later.
By the way, I think my last logs might be inconsistent with earlier ones (with endless SIPI messages) because earlier I might have in a hurry just pressed enter in the boot menu to choose whichever option was selected, instead of selecting ACRN. Now I'm more careful.
Removing 'quiet' parameter didn't help.
3) Naked HV ... is working. With your previous acrn.efi and bzImage from around Wednesday noon Central European Time, after serial boot log stops, I can indeed switch to ACRN console with ctrl+space. If I switch back to SOS, nothing happens. I can only return back to ACRN console. Here are some printouts:
Thank you again, I would never get this far without help.
Best regards, Dubravko
From:
acrn-users@... <acrn-users@...> on behalf of Chen,
Zide via Lists.Projectacrn.Org <zide.chen=intel.com@...>
Hi Dubravko, |
||||||||||||||||||||||||||||
|