Date   

2021 ACRN Project Technical Community Meeting (2021/1~2021/12): @ Monthly 3rd Wednesday 4PM (China-Shanghai), Wednesday 10AM (Europe-Munich), Tuesday 1AM (US-West Coast)

Zou, Terry
 

Special Notes: If you have Zoom connection issue by using web browser, please install & launch Zoom application, manually input the meeting ID (320664063) to join the Zoom meeting.
 
Agenda & Archives:
WW Topic Presenter Status
WW04 ACRN PCI based vUART introduction Tao Yuhong 1/20/2021
Chinese New Year Break
WW13 ACRN Real-Time Enhancement Introduction Huang Yonghua 3/24/2021
WW17 Enable ACRN on TGL NUC11 Liu Fuzhong 4/21/2021
WW21 ACRN Memory Layout Related Boot Issue Diagnosis Sun Victor 5/19/2021
WW30 ACRN Config Tool 2.0 Introduction Xie Nanlin 7/21/2021
WW34 ACRN RTVM  Performance of Sharing Storage Cao Minggui 8/18/2021
WW39 ACRN Software SRAM Introduction Huang Yonghua 9/15/2021
WW43 ACRN Nested Virtualization Introduction Shen Fangfang 10/20/2021
 
Project ACRN: A flexible, light-weight, open source reference hypervisor for IoT devices
We invite you to attend a monthly "Technical Community" meeting where we'll meet community members and talk about the ACRN project and plans.
As we explore community interest and involvement opportunities, we'll (re)schedule these meetings at a time convenient to most attendees:
  • Meets every 3rd Wednesday, Starting Jan 20, 2021: 4-5:00 PM (China-Shanghai), Wednesday 10-11:00 AM (Europe-Munich), Tuesday 1-2:00 AM (US-West Coast)
  • Chairperson: Terry ZOU, terry.zou@... (Intel)
  • Online conference link: https://zoom.com.cn/j/320664063
  • Zoom Meeting ID: 320 664 063
  • Special Notes: If you have Zoom connection issue by using web browser, please launch Zoom application, manually input the meeting ID (320664063) to join the Zoom meeting.
  • Online conference phone:
  • China: +86 010 87833177  or 400 669 9381 (Toll Free)
  • Germany: +49 (0) 30 3080 6188  or +49 800 724 3138 (Toll Free)
  • US: +1 669 900 6833  or +1 646 558 8656   or +1 877 369 0926 (Toll Free) or +1 855 880 1246 (Toll Free)
  • Additional international phone numbers
  • Meeting Notes:
 
 


2021 ACRN Project Technical Community Meeting (2021/1~2021/12): @ Monthly 3rd Wednesday 4PM (China-Shanghai), Wednesday 10AM (Europe-Munich), Tuesday 1AM (US-West Coast)

Zou, Terry
 

Special Notes: If you have Zoom connection issue by using web browser, please install & launch Zoom application, manually input the meeting ID (320664063) to join the Zoom meeting.
 
Agenda & Archives:
WW Topic Presenter Status
WW04 ACRN PCI based vUART introduction Tao Yuhong 1/20/2021
Chinese New Year Break
WW13 ACRN Real-Time Enhancement Introduction Huang Yonghua 3/24/2021
WW17 Enable ACRN on TGL NUC11 Liu Fuzhong 4/21/2021
WW21 ACRN Memory Layout Related Boot Issue Diagnosis Sun Victor 5/19/2021
WW30 ACRN Config Tool 2.0 Introduction Xie Nanlin 7/21/2021
WW34 ACRN RTVM  Performance of Sharing Storage Cao Minggui 8/18/2021
WW39 ACRN Software SRAM Introduction Huang Yonghua 9/15/2021
WW43 ACRN Nested Virtualization Introduction Shen Fangfang 10/20/2021
 
Project ACRN: A flexible, light-weight, open source reference hypervisor for IoT devices
We invite you to attend a monthly "Technical Community" meeting where we'll meet community members and talk about the ACRN project and plans.
As we explore community interest and involvement opportunities, we'll (re)schedule these meetings at a time convenient to most attendees:
  • Meets every 3rd Wednesday, Starting Jan 20, 2021: 4-5:00 PM (China-Shanghai), Wednesday 10-11:00 AM (Europe-Munich), Tuesday 1-2:00 AM (US-West Coast)
  • Chairperson: Terry ZOU, terry.zou@... (Intel)
  • Online conference link: https://zoom.com.cn/j/320664063
  • Zoom Meeting ID: 320 664 063
  • Special Notes: If you have Zoom connection issue by using web browser, please launch Zoom application, manually input the meeting ID (320664063) to join the Zoom meeting.
  • Online conference phone:
  • China: +86 010 87833177  or 400 669 9381 (Toll Free)
  • Germany: +49 (0) 30 3080 6188  or +49 800 724 3138 (Toll Free)
  • US: +1 669 900 6833  or +1 646 558 8656   or +1 877 369 0926 (Toll Free) or +1 855 880 1246 (Toll Free)
  • Additional international phone numbers
  • Meeting Notes:
 


Smallest SoS for ACRN?

Lonnie Cumberland <lonnie@...>
 

Greetings All,

I hope that everyone is having a nice weekend.

I am deep in my study of the ACRN documentation and have come across some areas that suggest that ACRN can have a number of different types of SoS(ServiceVM) with Ubuntu 18.04 being used commonly now while ClearOS seems to have been used in the past.

As I am seeking small footprint designs, I was just wondering what are perhaps some of the smallest SoS types that have been used for ACRN?

As a curiosity, has anyone actually used one of the Windows versions as a SoS?

Best,
Lonnie


Re: [acrn-dev] [acrn-users] Multiple Pre-Launched User VM question

Lonnie Cumberland <lonnie@...>
 

Thanks Geoffroy,

It was mainly just an idea, but in principle the goal is to have isolated servers (one for the SoftEther VPN switch, one for the NAS, etc.) where each one provides services to the ServiceVM which in-turn provides services to the UserVM's, or they could provide services directly to the UserVM's since each one would be the main channel to the outside world for the types of services they provide. 

In the past, we have briefly discussed the idea of having multiple ServiceVM's like one for each type of major service like drives, network, etc. but one of the developers (sorry but I forget which one exactly) mentioned that this would be problematic so I started thinking about alternatives within the current ACRN design.

It seems that the Pre-Loaded MV's are much like a Separation Kernel that physically partitions off physical resources although you mentioned now a shared memory option that may be helpful in this regard.

Thanks again my friend,
Lonnie


T

On Thu, Jun 3, 2021 at 10:01 AM Geoffroy Van Cutsem <geoffroy.vancutsem@...> wrote:

Hi Lonnie,

 

I’ll rely on the engineering team (@Chen, Jason CJ?) to help answer the question about being to run multiple pre-launched VMs.

 

The pre-launched VMs all use their own dedicate resources, there is no sharing possible across pre-launched VMs (inc. the Service VM). There is a communication channel you can establish between those based on shared memory (see our ivshmem documentation - https://projectacrn.github.io/latest/tutorials/enable_ivshmem.html).

 

Thanks,

Geoffroy

 

From: acrn-dev@... <acrn-dev@...> On Behalf Of Lonnie Cumberland
Sent: Thursday, June 3, 2021 2:43 PM
To: acrn-users@...
Cc: acrn-dev@...
Subject: Re: [acrn-dev] [acrn-users] Multiple Pre-Launched User VM question

 

Hi All,

 

Hope that everyone is doing well.

 

As I do not see a response to the question of "Multiple Pre-Launched" VM's, although I could have missed it, I am still wondering if perhaps 3 or 4 could be run. 

 

For my particular use case, I was investigating the possibility of having, for example, a NAS storage Pre-Launch VM that would basically handle all of the disk and external storage for the whole system such that UserVM and the ServiceVM could map in virtual drives and directories from the Pre-Launch NAS VM. I was also looking into the possibility of having a VPN Pre-Launch VM (Perhaps SoftEther) such that it would provide virtual network adapters to the whole system too.

 

The idea was to run these independent services as Pre-Launch VM's as it did not really make a lot of sense to have them all included in the ServiceVM because that would just keep creating a larger and larger ServiceVM that would have a number of different servers installed.

 

Of course, all of this might not be attainable with the current ACRN design, because I am not clear as to if the Pre-Launch VM's act similar to a Separation Kernel to partition off resources and their resources may not be either shareable to the ServiceVM.

 

Mostly just playing with ideas here and wanted to get some feedback on what ACRN is currently capable of doing and what it is not since the documentation does not particularly address some of these ideas in that it seems to be tightly coupled to some very specific use cases but has the potential for a much wider scope of use.

 

Best Regards,

Lonnie

 

 

On Tue, Jun 1, 2021 at 9:59 AM Geoffroy Van Cutsem <geoffroy.vancutsem@...> wrote:

> (/me making a mental note to go check the Dockerfile in my repo to make sure they’re up-to-date 😉)

 

I have just updated the Ubuntu 20.04 Dockerfile to reflect the latest build tools and dependencies for ACRN v2.4 (and beyond).

 

Thanks,

Geoffroy

 

From: VanCutsem, Geoffroy
Sent: Monday, May 31, 2021 5:54 PM
To: acrn-users@...; acrn-dev@...
Subject: RE: [acrn-users] Multiple Pre-Launched User VM question

 

Hi Lonnie!

 

That sounds like a lot of great progress! (/me making a mental note to go check the Dockerfile in my repo to make sure they’re up-to-date 😉)

 

Running ACRN on QEMU is possible on an Ubuntu 20.04 host, I have never tried on Windows… but if you do, please share your findings! The tutorial on the documentation website is currently out of date, as a matter of fact, I just figured out this morning (with the help of the engineering team) how to upgrade this outdated tutorial to be based on ACRN v2.4. Take a look at this Pull Request for the latest (until it gets merged and published on the website): https://github.com/projectacrn/acrn-hypervisor/pull/5937. Please note that it is not possible to run the latest version of ACRN (i.e. the upcoming v2.5 release) yet, it is currently blocked by: https://github.com/projectacrn/acrn-hypervisor/issues/6102

 

I do not know if it’s possible to have multiple pre-launched VMs at the same time. There are already 2 UUIDs reserved for those so it seems like it’s possible. You may even be able to re-use the UUID from the SAFETY_VM_UUID1 (although you may not use it for that purpose). I’ll need to research that question a bit more though unless someone watching this list knows the answer. If you need more than 3, and assuming it works up until 3, you will have at least to add more UUIDs in the codebase.

 

Note that I am not aware of anyone that has brought up ACRN on QEMU with pre-launched User VMs. Not necessarily that it cannot be done but you would be breaking new ground there… and again, any return on your testing/experience in that field would be most appreciated!

Thanks,

Geoffroy

 

From: acrn-users@... <acrn-users@...> On Behalf Of Lonnie Cumberland
Sent: Sunday, May 30, 2021 3:49 PM
To: acrn-users@...; acrn-dev@...
Subject: [acrn-users] Multiple Pre-Launched User VM question

 

Hi All,

 

This weekend, I was able to set up my base build system on the Intel NUC7i7 that I had purchased.  

 

It came with Windows 10 and instead of wiping the OS and installing Ubuntu 20.04 natively, I decided to try to use the LVS2 system that comes with Windows 10 which allows me to install and run Ubuntu 20.04 directly and use it concurrently from Windows 10. 

 

Additionally, I installed Docker in Windows which also gave me Docker in my Ubuntu 20.04 and was able to get the ACRN Docker files from:

 

 

and then was able to very easily set up a build environment for ACRN after which I successfully built the hypervisor.

 

Now I want to also see if I can run ACRN under Qemu either on native Windows 10 or under my new Ubuntu 20.04 so I am working on trying to figure out how to build a simple setup with some User VM's to test.


Also, I have been reading over the ACRN documentation where it discusses the various usage scenarios:

 

 

 

 

 I was wondering if ACRN can be configured and set up to have multiple "Pre-Launched" User VM's instead of just one?

 

If currently not possible, then what areas of the source code might I be able to view to see where this is done as I might want to see about forking the code to do some testing and modifications to see what is, or is not, achievable?

 

Thanks and have a good weekend,

Lonnie


Re: [acrn-dev] [acrn-users] Multiple Pre-Launched User VM question

Geoffroy Van Cutsem
 

Hi Lonnie,

 

I’ll rely on the engineering team (@Chen, Jason CJ?) to help answer the question about being to run multiple pre-launched VMs.

 

The pre-launched VMs all use their own dedicate resources, there is no sharing possible across pre-launched VMs (inc. the Service VM). There is a communication channel you can establish between those based on shared memory (see our ivshmem documentation - https://projectacrn.github.io/latest/tutorials/enable_ivshmem.html).

 

Thanks,

Geoffroy

 

From: acrn-dev@... <acrn-dev@...> On Behalf Of Lonnie Cumberland
Sent: Thursday, June 3, 2021 2:43 PM
To: acrn-users@...
Cc: acrn-dev@...
Subject: Re: [acrn-dev] [acrn-users] Multiple Pre-Launched User VM question

 

Hi All,

 

Hope that everyone is doing well.

 

As I do not see a response to the question of "Multiple Pre-Launched" VM's, although I could have missed it, I am still wondering if perhaps 3 or 4 could be run. 

 

For my particular use case, I was investigating the possibility of having, for example, a NAS storage Pre-Launch VM that would basically handle all of the disk and external storage for the whole system such that UserVM and the ServiceVM could map in virtual drives and directories from the Pre-Launch NAS VM. I was also looking into the possibility of having a VPN Pre-Launch VM (Perhaps SoftEther) such that it would provide virtual network adapters to the whole system too.

 

The idea was to run these independent services as Pre-Launch VM's as it did not really make a lot of sense to have them all included in the ServiceVM because that would just keep creating a larger and larger ServiceVM that would have a number of different servers installed.

 

Of course, all of this might not be attainable with the current ACRN design, because I am not clear as to if the Pre-Launch VM's act similar to a Separation Kernel to partition off resources and their resources may not be either shareable to the ServiceVM.

 

Mostly just playing with ideas here and wanted to get some feedback on what ACRN is currently capable of doing and what it is not since the documentation does not particularly address some of these ideas in that it seems to be tightly coupled to some very specific use cases but has the potential for a much wider scope of use.

 

Best Regards,

Lonnie

 

 

On Tue, Jun 1, 2021 at 9:59 AM Geoffroy Van Cutsem <geoffroy.vancutsem@...> wrote:

> (/me making a mental note to go check the Dockerfile in my repo to make sure they’re up-to-date 😉)

 

I have just updated the Ubuntu 20.04 Dockerfile to reflect the latest build tools and dependencies for ACRN v2.4 (and beyond).

 

Thanks,

Geoffroy

 

From: VanCutsem, Geoffroy
Sent: Monday, May 31, 2021 5:54 PM
To: acrn-users@...; acrn-dev@...
Subject: RE: [acrn-users] Multiple Pre-Launched User VM question

 

Hi Lonnie!

 

That sounds like a lot of great progress! (/me making a mental note to go check the Dockerfile in my repo to make sure they’re up-to-date 😉)

 

Running ACRN on QEMU is possible on an Ubuntu 20.04 host, I have never tried on Windows… but if you do, please share your findings! The tutorial on the documentation website is currently out of date, as a matter of fact, I just figured out this morning (with the help of the engineering team) how to upgrade this outdated tutorial to be based on ACRN v2.4. Take a look at this Pull Request for the latest (until it gets merged and published on the website): https://github.com/projectacrn/acrn-hypervisor/pull/5937. Please note that it is not possible to run the latest version of ACRN (i.e. the upcoming v2.5 release) yet, it is currently blocked by: https://github.com/projectacrn/acrn-hypervisor/issues/6102

 

I do not know if it’s possible to have multiple pre-launched VMs at the same time. There are already 2 UUIDs reserved for those so it seems like it’s possible. You may even be able to re-use the UUID from the SAFETY_VM_UUID1 (although you may not use it for that purpose). I’ll need to research that question a bit more though unless someone watching this list knows the answer. If you need more than 3, and assuming it works up until 3, you will have at least to add more UUIDs in the codebase.

 

Note that I am not aware of anyone that has brought up ACRN on QEMU with pre-launched User VMs. Not necessarily that it cannot be done but you would be breaking new ground there… and again, any return on your testing/experience in that field would be most appreciated!

Thanks,

Geoffroy

 

From: acrn-users@... <acrn-users@...> On Behalf Of Lonnie Cumberland
Sent: Sunday, May 30, 2021 3:49 PM
To: acrn-users@...; acrn-dev@...
Subject: [acrn-users] Multiple Pre-Launched User VM question

 

Hi All,

 

This weekend, I was able to set up my base build system on the Intel NUC7i7 that I had purchased.  

 

It came with Windows 10 and instead of wiping the OS and installing Ubuntu 20.04 natively, I decided to try to use the LVS2 system that comes with Windows 10 which allows me to install and run Ubuntu 20.04 directly and use it concurrently from Windows 10. 

 

Additionally, I installed Docker in Windows which also gave me Docker in my Ubuntu 20.04 and was able to get the ACRN Docker files from:

 

 

and then was able to very easily set up a build environment for ACRN after which I successfully built the hypervisor.

 

Now I want to also see if I can run ACRN under Qemu either on native Windows 10 or under my new Ubuntu 20.04 so I am working on trying to figure out how to build a simple setup with some User VM's to test.


Also, I have been reading over the ACRN documentation where it discusses the various usage scenarios:

 

 

 

 

 I was wondering if ACRN can be configured and set up to have multiple "Pre-Launched" User VM's instead of just one?

 

If currently not possible, then what areas of the source code might I be able to view to see where this is done as I might want to see about forking the code to do some testing and modifications to see what is, or is not, achievable?

 

Thanks and have a good weekend,

Lonnie


Re: Multiple Pre-Launched User VM question

Lonnie Cumberland <lonnie@...>
 

Hi All,

Hope that everyone is doing well.

As I do not see a response to the question of "Multiple Pre-Launched" VM's, although I could have missed it, I am still wondering if perhaps 3 or 4 could be run. 

For my particular use case, I was investigating the possibility of having, for example, a NAS storage Pre-Launch VM that would basically handle all of the disk and external storage for the whole system such that UserVM and the ServiceVM could map in virtual drives and directories from the Pre-Launch NAS VM. I was also looking into the possibility of having a VPN Pre-Launch VM (Perhaps SoftEther) such that it would provide virtual network adapters to the whole system too.

The idea was to run these independent services as Pre-Launch VM's as it did not really make a lot of sense to have them all included in the ServiceVM because that would just keep creating a larger and larger ServiceVM that would have a number of different servers installed.

Of course, all of this might not be attainable with the current ACRN design, because I am not clear as to if the Pre-Launch VM's act similar to a Separation Kernel to partition off resources and their resources may not be either shareable to the ServiceVM.

Mostly just playing with ideas here and wanted to get some feedback on what ACRN is currently capable of doing and what it is not since the documentation does not particularly address some of these ideas in that it seems to be tightly coupled to some very specific use cases but has the potential for a much wider scope of use.

Best Regards,
Lonnie


On Tue, Jun 1, 2021 at 9:59 AM Geoffroy Van Cutsem <geoffroy.vancutsem@...> wrote:

> (/me making a mental note to go check the Dockerfile in my repo to make sure they’re up-to-date 😉)

 

I have just updated the Ubuntu 20.04 Dockerfile to reflect the latest build tools and dependencies for ACRN v2.4 (and beyond).

 

Thanks,

Geoffroy

 

From: VanCutsem, Geoffroy
Sent: Monday, May 31, 2021 5:54 PM
To: acrn-users@...; acrn-dev@...
Subject: RE: [acrn-users] Multiple Pre-Launched User VM question

 

Hi Lonnie!

 

That sounds like a lot of great progress! (/me making a mental note to go check the Dockerfile in my repo to make sure they’re up-to-date 😉)

 

Running ACRN on QEMU is possible on an Ubuntu 20.04 host, I have never tried on Windows… but if you do, please share your findings! The tutorial on the documentation website is currently out of date, as a matter of fact, I just figured out this morning (with the help of the engineering team) how to upgrade this outdated tutorial to be based on ACRN v2.4. Take a look at this Pull Request for the latest (until it gets merged and published on the website): https://github.com/projectacrn/acrn-hypervisor/pull/5937. Please note that it is not possible to run the latest version of ACRN (i.e. the upcoming v2.5 release) yet, it is currently blocked by: https://github.com/projectacrn/acrn-hypervisor/issues/6102

 

I do not know if it’s possible to have multiple pre-launched VMs at the same time. There are already 2 UUIDs reserved for those so it seems like it’s possible. You may even be able to re-use the UUID from the SAFETY_VM_UUID1 (although you may not use it for that purpose). I’ll need to research that question a bit more though unless someone watching this list knows the answer. If you need more than 3, and assuming it works up until 3, you will have at least to add more UUIDs in the codebase.

 

Note that I am not aware of anyone that has brought up ACRN on QEMU with pre-launched User VMs. Not necessarily that it cannot be done but you would be breaking new ground there… and again, any return on your testing/experience in that field would be most appreciated!

Thanks,

Geoffroy

 

From: acrn-users@... <acrn-users@...> On Behalf Of Lonnie Cumberland
Sent: Sunday, May 30, 2021 3:49 PM
To: acrn-users@...; acrn-dev@...
Subject: [acrn-users] Multiple Pre-Launched User VM question

 

Hi All,

 

This weekend, I was able to set up my base build system on the Intel NUC7i7 that I had purchased.  

 

It came with Windows 10 and instead of wiping the OS and installing Ubuntu 20.04 natively, I decided to try to use the LVS2 system that comes with Windows 10 which allows me to install and run Ubuntu 20.04 directly and use it concurrently from Windows 10. 

 

Additionally, I installed Docker in Windows which also gave me Docker in my Ubuntu 20.04 and was able to get the ACRN Docker files from:

 

 

and then was able to very easily set up a build environment for ACRN after which I successfully built the hypervisor.

 

Now I want to also see if I can run ACRN under Qemu either on native Windows 10 or under my new Ubuntu 20.04 so I am working on trying to figure out how to build a simple setup with some User VM's to test.


Also, I have been reading over the ACRN documentation where it discusses the various usage scenarios:

 

 

 

 

 I was wondering if ACRN can be configured and set up to have multiple "Pre-Launched" User VM's instead of just one?

 

If currently not possible, then what areas of the source code might I be able to view to see where this is done as I might want to see about forking the code to do some testing and modifications to see what is, or is not, achievable?

 

Thanks and have a good weekend,

Lonnie


Re: [acrn-dev] ACRN vMeet-Up Europe 2021 - summary of Q&A

Geoffroy Van Cutsem
 

-----Original Message-----
From: acrn-dev@... <acrn-dev@...> On
Behalf Of Rong Liu
Sent: Thursday, June 3, 2021 12:15 AM
To: acrn-dev@...; acrn-users@...
Subject: Re: [acrn-dev] ACRN vMeet-Up Europe 2021 - summary of Q&A

Thanks, Geoffroy. I am wondering whether you can elaborate on this
question?

Q7: If you rely on HW-mechanisms to Control the Independence: how do
you Diagnose the healthy condition of HW during runtime?
A: HW diagnosis are to be defined at system level and can be
deployed to the safety VM. Examples include periodic online diagnosis
that checks the result of certain instruction sequences and values in HW
error registers.
I'll leave this one to Junjie to answer ;-)


ACRN vMeet-Up Europe 2021 - summary of Q&A

Geoffroy Van Cutsem
 

Hi folks,

Thank you again to all those who participated to our ACRN vMeet-Up Europe 2021 last week!

* The slides have been posted on the ACRN SlideShare channel here: https://www.slideshare.net/ProjectACRN
* The session recordings are all available on ACRN YouTube channel (2021 ACRN EU vMeetup playlist): https://youtube.com/playlist?list=PLCed_ZN9MOIBYpsbbbGtUEVIrMerkuS8_

There were also a number of questions asked during these 2 days, we have captured those below with their answers (as some were not fully answered during the event):

Q1: ACRN hypervisor model and Minimal Linux OS host requirements.
A: ACRN is similar to Xen, a type-1 (hybrid) hypervisor and runs baremetal. Minimum System Requirements for Installing ACRN' in https://projectacrn.github.io/latest/reference/hardware.html#minimum-system-requirements-for-installing-acrn
Q2: Has there been any measurement taken to see if there is any difference between a pre-launched and post-launched RTVM?
A: We did not do apple-apple comparison of pre vs. post-launched RTVM performance yet. In theory, pre-launched User VM RT performance should be better, since all resource are passed-through to User VM directly. But that may also depend based on workload.
Q3: Does ACRN support Trusted Platform Module (TPM) passthrough? Or any hardware security module (HSM) passthrough support?
A: Yes. TPM passthru is supported.
Q4: What is the total lines of code in the hypervisor as it pertains to certification? And is there a plan to certify to SIL4 in the future ?
A: For ACRN FuSa certification, the initial target is the "partition mode", that's around ~12K code. There are no plans for SIL4 yet.
Q5: What CPUs support CAT (Cache Allocation Technology) ?
A: Check CPUID to determine.
Q6: Could ACRN support multiple RTVMs?
A: It is possible to run multiple RTVMs, provided that enough care and attention has been put in the scenario definition and resource allocation. It has been done in the lab without changing the ACRN source code. We re-used UUIDs from standard post-launched VM to launch these additional RTVMs.
Q7: If you rely on HW-mechanisms to Control the Independence: how do you Diagnose the healthy condition of HW during runtime?
A: HW diagnosis are to be defined at system level and can be deployed to the safety VM. Examples include periodic online diagnosis that checks the result of certain instruction sequences and values in HW error registers.

Q1: Is ACRN also targeting datacenter use-cases? I can see this being a good fit, especially where security and isolation (e.g. testing) are paramount. Its efficient use of resources is also attractive.
A: Yes, we are also exploring ACRN usage in datacenter, especially for security and safety purpose. ACRN support on Xeon is also in roadmap.
Q2: Could ACRN support 'pass-through PCI bridge to virtual machine and enable device sharing/SRIOV in virtual machine' (i.e. have the PF and VF within the User VM).
A: current design is pass-through PCI bridge PF to the Service VM (SOS), and the Service VM manages the VFs, passing them through to individual virtual machines. So only the Service VM can manage physical device functions, e.g., MMIO, not in all VMs. But if there are special usage, we can see how to extend such support to dedicated VM.
Q3: Does Kata Containers support other hypervisor beyond ACRN?
A: Yes, Kata Containers supports various virtual machine managers (VMMs): QEMU, cloud-hypervisor, firecracker and ACRN.
Q4: How about 'memory configuration' mechanism in ACRN for pre and post-launched VMs. Can you give an example with a total of 8G of RAM memory.
A: Except memory reserved for pre-launched User VMs (say 1G), the rest of the memory is all (8G-1G- some for the hypervisor itself) for the Service VM. Post-launched VMs will get memory allocated by the Service VM, e.g., 3G for Windows, 1G for an RTVM. But you can change that to whatever you want, just make sure there is some left for the Service VM, then do config modification. We will also improve memory auto-detection and assignment in the ACRN Configuration Tools and documents.
Q5: For pre-launched User VMs, when and how are passthrough devices handled in the boot sequence?
A: For each VM, there are typical VM create() and launch VM() process, the initialization of passthru devices happens in VM create(). For pre-launched VM, it is done before the Service VM is launched.
Q6: Is debugging ACRN hypervisor on QEMU using gdb?
A: ACRN doesn't support gdb. There is a trade-off to be made because we want to keep the total lines of code (LOC) as low as possible. We recommend using a serial port for debugging ACRN.
Q7: Could nested KVM VM over ACRN share memory with ACRN Device Model (acrn-dm) based VM for inter-VM communication?
A: No, L2 VM launched by QEMU/KVM could only share memory with same L2 VMs.
Q8: How could one VM generate MSI/interrupt to another virtual VM.
A: Ivshmem Device BAR is exposed to VM1, user application only need to write '0Ch register' to trigger VM-exit, and hypervisor will emulate interrupt to VM2.
Q9: How about the performance of inter-VM communication with Ivshmem
A: Basically Ivshmem is based on memory write/read, so it is very quick/efficient. But user level performance would be impacted by the application to be scheduled by VM OS.
Q10: Do we support ivshmem network device ?
A: It is possible to do it but it is not implemented in ACRN yet. We have plans with it though.
Q11: Is there any plan to include documentation on how to use SBL(Slim bootloader) with ACRN? Currently I can see some documentation regarding this under 'meta-acrn'
A: there are a couple of (outdated) documents available to start from:
* https://projectacrn.github.io/2.1/tutorials/using_sbl_on_up2.html
* https://slimbootloader.github.io/how-tos/boot-acrn.html
These need to updated though, the ACRN doc was removed after 2.1 since we started using Ubuntu instead of Clearlinux and much of the instructions would have had to be updated (including the wrapper script that we provide for convenience). The SBL documentation site has a number of guides for various platforms, some also supported by ACRN: https://slimbootloader.github.io/supported-hardware/index.html

Cheers,
Geoffroy

Senior Technical Marketing Engineer
IAGS - System Software Products
Tel: +32 (0)3 450 0851

-----------------------------------------------
Intel Corporation NV/SA
Kings Square, Veldkant 31
2550 Kontich
RPM (Bruxelles) 0415.497.718.
Citibank, Brussels, account 570/1031255/09


Re: Multiple Pre-Launched User VM question

Geoffroy Van Cutsem
 

> (/me making a mental note to go check the Dockerfile in my repo to make sure they’re up-to-date 😉)

 

I have just updated the Ubuntu 20.04 Dockerfile to reflect the latest build tools and dependencies for ACRN v2.4 (and beyond).

 

Thanks,

Geoffroy

 

From: VanCutsem, Geoffroy
Sent: Monday, May 31, 2021 5:54 PM
To: acrn-users@...; acrn-dev@...
Subject: RE: [acrn-users] Multiple Pre-Launched User VM question

 

Hi Lonnie!

 

That sounds like a lot of great progress! (/me making a mental note to go check the Dockerfile in my repo to make sure they’re up-to-date 😉)

 

Running ACRN on QEMU is possible on an Ubuntu 20.04 host, I have never tried on Windows… but if you do, please share your findings! The tutorial on the documentation website is currently out of date, as a matter of fact, I just figured out this morning (with the help of the engineering team) how to upgrade this outdated tutorial to be based on ACRN v2.4. Take a look at this Pull Request for the latest (until it gets merged and published on the website): https://github.com/projectacrn/acrn-hypervisor/pull/5937. Please note that it is not possible to run the latest version of ACRN (i.e. the upcoming v2.5 release) yet, it is currently blocked by: https://github.com/projectacrn/acrn-hypervisor/issues/6102

 

I do not know if it’s possible to have multiple pre-launched VMs at the same time. There are already 2 UUIDs reserved for those so it seems like it’s possible. You may even be able to re-use the UUID from the SAFETY_VM_UUID1 (although you may not use it for that purpose). I’ll need to research that question a bit more though unless someone watching this list knows the answer. If you need more than 3, and assuming it works up until 3, you will have at least to add more UUIDs in the codebase.

 

Note that I am not aware of anyone that has brought up ACRN on QEMU with pre-launched User VMs. Not necessarily that it cannot be done but you would be breaking new ground there… and again, any return on your testing/experience in that field would be most appreciated!

Thanks,

Geoffroy

 

From: acrn-users@... <acrn-users@...> On Behalf Of Lonnie Cumberland
Sent: Sunday, May 30, 2021 3:49 PM
To: acrn-users@...; acrn-dev@...
Subject: [acrn-users] Multiple Pre-Launched User VM question

 

Hi All,

 

This weekend, I was able to set up my base build system on the Intel NUC7i7 that I had purchased.  

 

It came with Windows 10 and instead of wiping the OS and installing Ubuntu 20.04 natively, I decided to try to use the LVS2 system that comes with Windows 10 which allows me to install and run Ubuntu 20.04 directly and use it concurrently from Windows 10. 

 

Additionally, I installed Docker in Windows which also gave me Docker in my Ubuntu 20.04 and was able to get the ACRN Docker files from:

 

 

and then was able to very easily set up a build environment for ACRN after which I successfully built the hypervisor.

 

Now I want to also see if I can run ACRN under Qemu either on native Windows 10 or under my new Ubuntu 20.04 so I am working on trying to figure out how to build a simple setup with some User VM's to test.


Also, I have been reading over the ACRN documentation where it discusses the various usage scenarios:

 

 

 

 

 I was wondering if ACRN can be configured and set up to have multiple "Pre-Launched" User VM's instead of just one?

 

If currently not possible, then what areas of the source code might I be able to view to see where this is done as I might want to see about forking the code to do some testing and modifications to see what is, or is not, achievable?

 

Thanks and have a good weekend,

Lonnie


Re: Multiple Pre-Launched User VM question

Lonnie Cumberland <lonnie@...>
 

Thanks Geoffroy,

I am working on it now and will see what I can get going.

Is there an updated tutorial on 

1. Taking an existing ACRN image (as I have previously built one now)
2. Building a single service image with the ACRN build from Step 1.
3. Adding some simple User VM's

I would guess that all of the above would result in a ".img" file that could be booted in Qemu for testing, or at least that is the goal.

Hard to find just an initial simple to follow process to make a self-contained image that has ACRN+ServiceVM+a couple UserVM.
Cheers,
Lonnie


On Mon, May 31, 2021 at 11:54 AM Geoffroy Van Cutsem <geoffroy.vancutsem@...> wrote:

Hi Lonnie!

 

That sounds like a lot of great progress! (/me making a mental note to go check the Dockerfile in my repo to make sure they’re up-to-date 😉)

 

Running ACRN on QEMU is possible on an Ubuntu 20.04 host, I have never tried on Windows… but if you do, please share your findings! The tutorial on the documentation website is currently out of date, as a matter of fact, I just figured out this morning (with the help of the engineering team) how to upgrade this outdated tutorial to be based on ACRN v2.4. Take a look at this Pull Request for the latest (until it gets merged and published on the website): https://github.com/projectacrn/acrn-hypervisor/pull/5937. Please note that it is not possible to run the latest version of ACRN (i.e. the upcoming v2.5 release) yet, it is currently blocked by: https://github.com/projectacrn/acrn-hypervisor/issues/6102

 

I do not know if it’s possible to have multiple pre-launched VMs at the same time. There are already 2 UUIDs reserved for those so it seems like it’s possible. You may even be able to re-use the UUID from the SAFETY_VM_UUID1 (although you may not use it for that purpose). I’ll need to research that question a bit more though unless someone watching this list knows the answer. If you need more than 3, and assuming it works up until 3, you will have at least to add more UUIDs in the codebase.

 

Note that I am not aware of anyone that has brought up ACRN on QEMU with pre-launched User VMs. Not necessarily that it cannot be done but you would be breaking new ground there… and again, any return on your testing/experience in that field would be most appreciated!

Thanks,

Geoffroy

 

From: acrn-users@... <acrn-users@...> On Behalf Of Lonnie Cumberland
Sent: Sunday, May 30, 2021 3:49 PM
To: acrn-users@...; acrn-dev@...
Subject: [acrn-users] Multiple Pre-Launched User VM question

 

Hi All,

 

This weekend, I was able to set up my base build system on the Intel NUC7i7 that I had purchased.  

 

It came with Windows 10 and instead of wiping the OS and installing Ubuntu 20.04 natively, I decided to try to use the LVS2 system that comes with Windows 10 which allows me to install and run Ubuntu 20.04 directly and use it concurrently from Windows 10. 

 

Additionally, I installed Docker in Windows which also gave me Docker in my Ubuntu 20.04 and was able to get the ACRN Docker files from:

 

 

and then was able to very easily set up a build environment for ACRN after which I successfully built the hypervisor.

 

Now I want to also see if I can run ACRN under Qemu either on native Windows 10 or under my new Ubuntu 20.04 so I am working on trying to figure out how to build a simple setup with some User VM's to test.


Also, I have been reading over the ACRN documentation where it discusses the various usage scenarios:

 

 

 

 

 I was wondering if ACRN can be configured and set up to have multiple "Pre-Launched" User VM's instead of just one?

 

If currently not possible, then what areas of the source code might I be able to view to see where this is done as I might want to see about forking the code to do some testing and modifications to see what is, or is not, achievable?

 

Thanks and have a good weekend,

Lonnie


Re: Multiple Pre-Launched User VM question

Geoffroy Van Cutsem
 

Hi Lonnie!

 

That sounds like a lot of great progress! (/me making a mental note to go check the Dockerfile in my repo to make sure they’re up-to-date 😉)

 

Running ACRN on QEMU is possible on an Ubuntu 20.04 host, I have never tried on Windows… but if you do, please share your findings! The tutorial on the documentation website is currently out of date, as a matter of fact, I just figured out this morning (with the help of the engineering team) how to upgrade this outdated tutorial to be based on ACRN v2.4. Take a look at this Pull Request for the latest (until it gets merged and published on the website): https://github.com/projectacrn/acrn-hypervisor/pull/5937. Please note that it is not possible to run the latest version of ACRN (i.e. the upcoming v2.5 release) yet, it is currently blocked by: https://github.com/projectacrn/acrn-hypervisor/issues/6102

 

I do not know if it’s possible to have multiple pre-launched VMs at the same time. There are already 2 UUIDs reserved for those so it seems like it’s possible. You may even be able to re-use the UUID from the SAFETY_VM_UUID1 (although you may not use it for that purpose). I’ll need to research that question a bit more though unless someone watching this list knows the answer. If you need more than 3, and assuming it works up until 3, you will have at least to add more UUIDs in the codebase.

 

Note that I am not aware of anyone that has brought up ACRN on QEMU with pre-launched User VMs. Not necessarily that it cannot be done but you would be breaking new ground there… and again, any return on your testing/experience in that field would be most appreciated!

Thanks,

Geoffroy

 

From: acrn-users@... <acrn-users@...> On Behalf Of Lonnie Cumberland
Sent: Sunday, May 30, 2021 3:49 PM
To: acrn-users@...; acrn-dev@...
Subject: [acrn-users] Multiple Pre-Launched User VM question

 

Hi All,

 

This weekend, I was able to set up my base build system on the Intel NUC7i7 that I had purchased.  

 

It came with Windows 10 and instead of wiping the OS and installing Ubuntu 20.04 natively, I decided to try to use the LVS2 system that comes with Windows 10 which allows me to install and run Ubuntu 20.04 directly and use it concurrently from Windows 10. 

 

Additionally, I installed Docker in Windows which also gave me Docker in my Ubuntu 20.04 and was able to get the ACRN Docker files from:

 

 

and then was able to very easily set up a build environment for ACRN after which I successfully built the hypervisor.

 

Now I want to also see if I can run ACRN under Qemu either on native Windows 10 or under my new Ubuntu 20.04 so I am working on trying to figure out how to build a simple setup with some User VM's to test.


Also, I have been reading over the ACRN documentation where it discusses the various usage scenarios:

 

 

 

 

 I was wondering if ACRN can be configured and set up to have multiple "Pre-Launched" User VM's instead of just one?

 

If currently not possible, then what areas of the source code might I be able to view to see where this is done as I might want to see about forking the code to do some testing and modifications to see what is, or is not, achievable?

 

Thanks and have a good weekend,

Lonnie


Multiple Pre-Launched User VM question

Lonnie Cumberland <lonnie@...>
 

Hi All,

This weekend, I was able to set up my base build system on the Intel NUC7i7 that I had purchased.  

It came with Windows 10 and instead of wiping the OS and installing Ubuntu 20.04 natively, I decided to try to use the LVS2 system that comes with Windows 10 which allows me to install and run Ubuntu 20.04 directly and use it concurrently from Windows 10. 

Additionally, I installed Docker in Windows which also gave me Docker in my Ubuntu 20.04 and was able to get the ACRN Docker files from:


and then was able to very easily set up a build environment for ACRN after which I successfully built the hypervisor.

Now I want to also see if I can run ACRN under Qemu either on native Windows 10 or under my new Ubuntu 20.04 so I am working on trying to figure out how to build a simple setup with some User VM's to test.

Also, I have been reading over the ACRN documentation where it discusses the various usage scenarios:


image.png


 I was wondering if ACRN can be configured and set up to have multiple "Pre-Launched" User VM's instead of just one?

If currently not possible, then what areas of the source code might I be able to view to see where this is done as I might want to see about forking the code to do some testing and modifications to see what is, or is not, achievable?

Thanks and have a good weekend,
Lonnie


Various Guests in ACRN

Lonnie Cumberland <lonnie@...>
 

Hi All,

I have been reading over the ACRN documentation and it seems as though ACRN can run various Linux, Windows, and Android Guest OS as user VM.

One thing that I do not recall seeing is if the OS can be 32-bit and/or 64-bit.

Can ACRN run both types or is it limited to one?

Thanks and have a good weekend,
Lonnie





ACRN Demo ISO needed

Lonnie Cumberland <lonnie@...>
 

Hi All,

I was just searching the ACRN mailing list and found some past discussions that I had regarding ISO's so my earlier message may not be relevant, although I truly think that it would be a very good idea for the ACRN project to have some Demo ISO's on the site so that people can download and test out which would give them a good feel for if ACRN is what they might be looking for and if they want to get involved with the project.

I now have a NUC7i7 and would really just like to see ACRN run without having to go through the whole setup and build process first just to see it in action locally.

Of course, I am going to work towards doing a setup and build with perhaps a couple of Linux VM's just to play with and get started, but it would be nice to see it run first.

Anyway, just my opinion.
Cheers,
Lonnie



Re: 2021 ACRN Project Technical Community Meeting Minutes - WW21'21

Kinder, David B
 

All the videos from the EU Meetup are posted now on the Project ACRN YouTube channel and collected in this EU Meetup playlist.

-- david

 

From: acrn-users@... <acrn-users@...> On Behalf Of Geoffroy Van Cutsem
Sent: Thursday, May 27, 2021 4:05 PM
To: acrn-users@...
Subject: Re: [acrn-users] 2021 ACRN Project Technical Community Meeting Minutes - WW21'21

 

Hi Yogesh, all,

 

The presentations have been uploaded to ACRN’s SlideShare channel: https://www.slideshare.net/ProjectACRN

The session recordings are being uploaded on ACRN YouTube channel: https://www.youtube.com/channel/UCOzsK7yi3VQvWTye-zVsJjQ (give this a bit more time as we need to slice them and upload them and it take a bit of time).

 

Thanks!
Geoffroyslide

 

From: acrn-users@... <acrn-users@...> On Behalf Of yogesh@...
Sent: Wednesday, May 26, 2021 6:33 PM
To: acrn-users@...
Subject: Re: [acrn-users] 2021 ACRN Project Technical Community Meeting Minutes - WW21'21

 

Thanks Geoffroy. This will be really helpful. Looking forward to hearing out soon. 


Re: 2021 ACRN Project Technical Community Meeting Minutes - WW21'21

yogesh@...
 

Thank you Geoffroy. This is helpful. 


Re: 2021 ACRN Project Technical Community Meeting Minutes - WW21'21

Geoffroy Van Cutsem
 

Hi Yogesh, all,

 

The presentations have been uploaded to ACRN’s SlideShare channel: https://www.slideshare.net/ProjectACRN

The session recordings are being uploaded on ACRN YouTube channel: https://www.youtube.com/channel/UCOzsK7yi3VQvWTye-zVsJjQ (give this a bit more time as we need to slice them and upload them and it take a bit of time).

 

Thanks!
Geoffroyslide

 

From: acrn-users@... <acrn-users@...> On Behalf Of yogesh@...
Sent: Wednesday, May 26, 2021 6:33 PM
To: acrn-users@...
Subject: Re: [acrn-users] 2021 ACRN Project Technical Community Meeting Minutes - WW21'21

 

Thanks Geoffroy. This will be really helpful. Looking forward to hearing out soon. 


Re: user VM Management from SOS VM

yogesh@...
 

Hi Fuzhong,
    I have added below line to my launcher script, but not resulting into serial console login 
 
acrn-dm -A -m $mem_size -s 0:0,hostbridge -U d2795438-25d6-11e8-864e-cb7a18b34643 \
   --mac_seed $mac_seed \
   $logger_setting \
   -s 3,virtio-blk,./uos_new.img \
   -s 6,virtio-net,tap_WaaG \
   -s 2,passthru,0/2/0,gpu  \
   --ovmf /usr/share/acrn/bios/OVMF.fd \
   $intr_storm_monitor \
   -s 5,virtio-console,@stdio:stdio \
   -s 1:0,lpc \
   -l com1,stdio \
   -s 4,passthru,03/00/1 \
   $vm_name
}

pfa launcher script. 
yogesh@mcl-acrn-test3:~/launcher$ sudo bash ./launch_uos_id1.sh
[sudo] password for yogesh:
cpu3 online=0
tap device existed, reuse tap_WaaG
logger: name=console, level=4
logger: name=kmsg, level=3
logger: name=disk, level=5
SW_LOAD: get ovmf path /usr/share/acrn/bios/OVMF.fd, size 0x200000
vm_create: post_vm_id1
VHM api version 1.0
vm_setup_memory: size=0x100000000
open hugetlbfs file /run/hugepage/acrn/huge_lv1/post_vm_id1/D279543825D611E8864ECB7A18B34643
open hugetlbfs file /run/hugepage/acrn/huge_lv2/post_vm_id1/D279543825D611E8864ECB7A18B34643
level 0 free/need pages:1/1 page size:0x200000
level 1 free/need pages:12/4 page size:0x40000000
 
try to setup hugepage with:
        level 0 - lowmem 0x0, biosmem 0x200000, highmem 0x0
        level 1 - lowmem 0x80000000, biosmem 0x0, highmem 0x80000000
total_size 0x200000000
 
mmap ptr 0x0x7f136519a000 -> baseaddr 0x0x7f1380000000
mmap 0x80000000@0x7f1380000000
touch 2 pages with pagesz 0x40000000
mmap 0x80000000@0x7f14c0000000
touch 2 pages with pagesz 0x40000000
mmap 0x200000@0x7f147fe00000
touch 1 pages with pagesz 0x200000
 
really setup hugepage with:
        level 0 - lowmem 0x0, biosmem 0x200000, highmem 0x0
        level 1 - lowmem 0x80000000, biosmem 0x0, highmem 0x80000000
vm_init_vdevs
No pm notify channel given
Listening 0...
polling 37...
start monitor interrupt data...
pci init hostbridge
pci init lpc
pci init passthru
pci init virtio-blk
pci init passthru
pci init virtio-console
vtcon: stdio is used by other device
 pci virtio-console init failed
 vm_reset_ptdev_intx:0x10-10, ioapic virpin=0.
 vm_reset_ptdev_intx:0x20-301, ioapic virpin=0.
mngr_client_new: Failed to accept from fd 37, err: Invalid argument
Stop listening 37...
Stop polling 37...
No correct pm notify channel given
Unable to init vdev (2)
 


Re: 2021 ACRN Project Technical Community Meeting Minutes - WW21'21

yogesh@...
 

Thanks Geoffroy. This will be really helpful. Looking forward to hearing out soon. 


Re: 2021 ACRN Project Technical Community Meeting Minutes - WW21'21

Geoffroy Van Cutsem
 

Hi Yogesh,

 

Yes, we will publish those shortly 😉

 

Thanks,

Geoffroy

 

From: acrn-users@... <acrn-users@...> On Behalf Of yogesh@...
Sent: Tuesday, May 25, 2021 6:17 PM
To: acrn-users@...
Subject: Re: [acrn-users] 2021 ACRN Project Technical Community Meeting Minutes - WW21'21

 

Hi, 
   Can we have recordings available or access to offline access. This will be really helpful for community lovers. 
Thanks,
Yogesh

301 - 320 of 1237