ACRN v1.4 (Oct 2019)¶
We are pleased to announce the release of ACRN version 1.4.
ACRN is a flexible, lightweight reference hypervisor that is built with real-time and safety-criticality in mind. It is optimized to streamline embedded development through an open source platform. Check out the What is ACRN for more information. All project ACRN source code is maintained in the https://github.com/projectacrn/acrn-hypervisor repository and includes folders for the ACRN hypervisor, the ACRN device model, tools, and documentation. You can either download this source code as a zip or tar.gz file (see the ACRN v1.4 GitHub release page) or use Git clone and checkout commands:
git clone https://github.com/projectacrn/acrn-hypervisor
cd acrn-hypervisor
git checkout v1.4
The project’s online technical documentation is also tagged to correspond with a specific release: generated v1.4 documents can be found at https://projectacrn.github.io/1.4/. Documentation for the latest (master) branch is found at https://projectacrn.github.io/latest/. ACRN v1.4 requires Clear Linux* OS version 31670. Follow the instructions in the Getting Started Guide for ACRN Industry Scenario.
Version 1.4 major features¶
What’s New in v1.4¶
- ACRN now conforms to the Microsoft* Hypervisor Top-Level Functional Specification (TLFS).
- ACRN scheduler framework re-architected capabilities have been added.
- WaaG (Windows as a guest) stability and performance has been improved.
- Realtime performance of the RTVM (preempt-RT kernel-based) has been improved.
Document updates¶
Many new reference documents are available, including:
Security Vulnerabilities¶
We recommend that all developers upgrade to this v1.4 release, which addresses the following security issues that were discovered in previous releases:
- Mitigation for Machine Check Error on Page Size Change
- Improper invalidation for page table updates by a virtual guest operating system for multiple Intel® Processors may allow an authenticated user to potentially enable denial of service of the host system via local access. Malicious guest kernel could trigger this issue, CVE-2018-12207.
- AP Trampoline Is Accessible to the Service VM
- This vulnerability is triggered when validating the memory isolation between the VM and hypervisor. The AP Trampoline code exists in the LOW_RAM region in the hypervisor but is potentially accessible to the Service VM. This could be used by an attacker to mount DoS attacks on the hypervisor if the Service VM is compromised.
- Improper Usage Of the
LIST_FOREACH()
Macro - Testing discovered that the MACRO
LIST_FOREACH()
was incorrectly used in some cases which could induce a “wild pointer” and cause the ACRN Device Model to crash. Attackers can potentially use this issue to cause denial of service (DoS) attacks. - Hypervisor Crashed When Fuzzing HC_SET_CALLBACK_VECTOR
- This vulnerability was reported by the Fuzzing tool for the debug version of ACRN. When the software fails to validate input properly, an attacker is able to craft the input in a form that is not expected by the rest of the application. This can lead to parts of the system receiving unintended inputs, which may result in an altered control flow, arbitrary control of a resource, or arbitrary code execution.
- FILE Pointer Is Not Closed After Using
- This vulnerability was reported by the Fuzzing tool. Leaving the file unclosed will cause a leaking file descriptor and may cause unexpected errors in the Device Model program.
- Descriptor of Directory Stream Is Referenced After Release
- This vulnerability was reported by the Fuzzing tool. A successful call to
closedir(DIR *dirp)
also closes the underlying file descriptor associated withdirp
. Access to the released descriptor may point to some arbitrary memory location or cause undefined behavior. - Mutex Is Potentially Kept in a Locked State Forever
- This vulnerability was reported by the Fuzzing tool. Here,
pthread_mutex_lock/unlock
pairing was not always done. Leaving a mutex in a locked state forever can cause program deadlock, depending on the usage scenario.
We recommend that all developers upgrade to ACRN release v1.4.
New Features Details¶
- 3583 - Add Oracle subsystem vendor ID for some virtio devices.
- 3600 - remove unused acrn-dm option “pincpu”.
- 3663 - CPU Sharing: Static Schedule Configuration.
- 3813 - CPU Sharing: noop CPU Scheduler.
- 3831 - implement performance related TLFS features.
- 3832 - Implement Microsoft TLFS minimal requirements.
- 3927 - OVMF release V1.4
Fixed Issues Details¶
- 3286 - Remove all TravisCI-related files (including Dockerfiles)
- 3329 - Enhance the built-in and online help for acrnd
- 3330 - Add a check to acrnd and acrnctl to verify if running with root privileges
- 3425 - Guest cannot support more than 4 vcpu
- 3429 - [Community][Internal]Add SDC2 scenario to support three post-launched VM for some automotive SDC system
- 3491 - [KBL][HV][LaaG]Kill acrn-dm fail after Failed to Launch UOS with 0core
- 3503 - [KBL][HV][Hybrid]SOS fail results is different with native when SOS_LTP_syscalls.
- 3532 - [UP2][SBL][VBS] sbl-up2 could not boot up when HYBRID kconfig enabled
- 3593 - Makefile change which add isd build.
- 3598 - [Community-dev][Internal]SEP/SOCWATCH fixes for following coding guidelines
- 3609 - [KBLNUC][Stability][RTVM]Host entered standby state with power key flickering in coldboot test.
- 3612 - Potential Null pointer be dereferenced in ‘usb_dev_request()’
- 3622 - [AcrnGT] Kernel PANIC while rebased acrngt patches to mainline kernel v5.2
- 3626 - hv: vtd: fix MACRO typos
- 3636 - tsc_deadline incorrect issue.
- 3644 - HV hang on AC810
- 3648 - [REG][KBL/ISD/VBS][HV][SOS]UOS hang when booting UOS with acrnlog running with mem loglevel=6.
- 3673 - [Community-dev][Internal]Incorrect reference to OVMF.fd in sample UOS startup script
- 3675 - [Community-dev][Internal] cbm length calculation,Extended model judge, print info error
- 3708 - [Auto][Daily][OVMF] RTVM can not launch after poweroff, rtvm can not reboot
- 3718 - [KBLNUC][Stability][RTVM]WaaG hang after keep WaaG idle in RTVM Create/Destroy test.
- 3729 - [KBLNUC]Cannot auto boot 2 VMs with acrnd
- 3751 - [acrn-configuration-tool] The default launch script generated by acrn-config for Preemp-RT Linux will pass through Ethernet device, which does not match the behavior with devicemodel/samples/nuc/launch_hard_rt.sh
- 3754 - [acrn-configuration-tool] WebUI could not select /dev/mmcblk0p1 as UOS rootfs for apl-up2 board, and /dev/mmcblk1p3 for apl-mrb
- 3760 - [acrn-configuration-tool]WebUI could not generate configuration patch for a new imported board
- 3778 - DM: LIST_FOREACH is improperly used and will result in potential crash
- 3787 - crashtool: Invalid pointer validation in “crash_completed_cb()”
- 3788 - [acrn-configuration-tool]pci sub class name of NVME contain ‘-‘ and ‘ ‘ cause wrong macro
- 3789 - DM:The return value of snprintf is improperly checked.
- 3798 - [acrn-configuration-tool] Failed to make hypervisor by using xml
- 3801 - [UP2/KBL][HV][LaaG][Fuzzing]Hypervisor crash when run syz_ic_set_callback_vector.
- 3809 - [acrn-configuration-tool]The “uos_type”& items in “passthrough_devices” will disappear when clicking on the drop-down box.
- 3811 - [acrn-configuration-tool]Fail to Generate launch_script for a new imported board
- 3812 - [acrn-configuration-tool] Generated Launch script is incorrect when select ethernet for apl-mrb with Scenario:SDC+Launch Setting: sdc_launch_1uos_laag/aaag
- 3817 - DM: FILE Pointer Is Not Closed After Operations in acrn_load_elf
- 3821 - DM: DIR handler is referenced after release in npk.c
- 3822 - DM: Potential Buffer Overflow due to Unvalidated Input in vm_monitor_blkrescan()
- 3825 - DM: ‘request_mutex’ is potentially not unlocked in tpm_crb.c
- 3827 - Service VM power off need at least one minute when passthru NVMe to RTVM
- 3834 - [acrn-configuration-tool] UX enhancement: acrn-config end users hope to have interfaces to commit changes to local tree or not after setting scenario/launch scripts
- 3840 - [Hybrid][UP2][GVT][LaaG]LaaG has no display with uefi boot mode
- 3852 - [acrn-configuration-tool]RTVM cannot launched successfully after have launched vxworks or waag.
- 3853 - [acrn-configuration-tool] Generated Launch script is incorrect when select audio&audio_codec for nuc7i7dnb with Scenario:SDC
- 3859 - VM-Manager: the return value of “strtol” is not validated properly
- 3863 - [acrn-configuration-tool]WebUI do not select audio&wifi devices by default for apl-mrb with LaunchSetting: sdc_launch_1uos_aaag
- 3879 - [acrn-configuration-tool]The “-k” parameter is unnecessary in launch_uos_id2.sh for RTVM.
- 3880 - [acrn-configuration-tool]”–windows ” missing in launch_uos_id1.sh for waag.
- 3900 - [WHL][acrn-configuration-tool]Same bdf in generated whl-ipc-i5.xml.
- 3913 - [acrn-configuration-tool]WebUI do not give any prompt when generate launch_script for a new imported board
- 3914 - [KBL][HV][LaaG] in LaaG, Geekbenck single core result is aroud 83% percent of native
- 3917 - [acrn-configuration-tool]Can not select “Network controller” device in wifiðernet combobox for Board=nuc6cayh&nuc7i7dnb on WebUI
- 3925 - Statically allocate 2 pCPUs for hard RT VM by default
- 3932 - [KBL][acrn-configuration-tool]Generated Launch script miss “-m $mem_size” after select passthru_device
- 3933 - [KBLNUC][Function][LaaG] can’t bootup LaaG
- 3937 - [KBL][acrn-configuration-tool][WaaG]Generated Launch script miss boot_audio_option’s right_double_quotation_marks for Board info:nuc7i7dnb + Launch Setting: industry_launch_1uos_waag
- 3947 - [ISD][Stability][WaaG] WaaG auto boot failed after systemctl enable acrnd during S5 testing
- 3948 - [KBL][acrn-configuration-tool]’keep_gsi’ should not set along with waag vm
- 3949 - [KBL][acrn-configuration-tool]’virtio-blk’ was generated in launch script of Preempt-RT, should remove it
- 3974 - [WHL][Function][RT_LaaG][REG]RTVM cannot poweroff & acrnctl stop.
- 3975 - [WHL][Function][RT_LaaG][REG]RTVM cannot poweroff & acrnctl stop.
- 3993 - trampoline code in hypervisor potentially be accessible to service VM
Known Issues¶
- 3979 - The boot uos script will display the sos information on the uos screen for about 2s
- 4005 - Fail to create WaaG image using ISO only on WHL
- 4042 - RTVM UOS result is invalid when run cpu2017 with 3 and 1 core.
- 4043 - Windows guest can not get normal IP after passthru Ethernet
- 4045 - Adding USB mediator in launch script, it takes a long time to start windows, about 13 minutes.
- 4046 - Error info popoup when run 3DMARK11 on Waag
- 4047 - passthru usb, when WaaG boot at “windows boot manager” menu, the usb keyboard does not work.
- 4048 - Scalling the media player while playing a video, then the video playback is not smooth
- 4049 - Only slot-2 can work in “-s n,passthru,02/00/0 ” for RTVM, other slots are not functional
Change Log¶
These commits have been added to the acrn-hypervisor repo since the v1.3 release in Sep 2019 (click on the CommitID link to see details):
- e0d14b70 - Doc: Grammatical edits to the 1.4 Release Notes.
- d8bd5088 - doc: Release notes v1.4
- 90a61134 - Doc: Grammatical edits to the Advisory doc.
- c6bccd5c - doc: Add Advisory notes
- 94394ae9 - Doc: Grammatical edits to the Enable S5 Guide.
- b16e5987 - doc: enable s5 guide
- d473cafe - dm: Add licenses to the scripts.
- 79294b39 - Doc: Final edits for the HLD-Security doc.
- 865d1a22 - doc: add hld-security guest secure boot description
- a4713fce - doc: add copyright/license header to doc scripts
- 04767070 - Doc: Final edits to the HV Hypercall doc.
- dcfa7587 - Doc: Final edits to the CPU Virt doc
- ce46f35d - doc: review edits for rt_industry doc
- 3298891f - Doc: Final edits to the HLD Overview doc.
- a74a7551 - Doc: Final edits to Memory Mangt HLD doc.
- 1c3f16f5 - doc: review edit for enable_laag_secure_boot
- ae126bd5 - doc: review edits for acrn_configuration_tool
- 9687d72e - doc: add cores and threads for CPU of supported hardware
- 2d0739bf - doc: fix error in building_from_source doc
- 3b977eef - doc: clean up the docs in try using acrn table.
- 2a3178aa - doc: Update Using Windows as Guest VM on ACRN
- 9bd274ae - doc:modfiy ubuntu build on 18.04
- 7d818c82 - doc: Stop using kconfig to make a customized efi.
- 67c64522 - dm: fix memory free issue for xhci
- 3fb1021d - Doc: Minor grammatical edits on various files.
- 72f71192 - doc: fix doc build errors previously masked
- 2a6f2fa8 - hv: update virtual interrupts HLD
- 3314857a - Doc: update conf.py file to include v1.4
- b20a67f8 - doc: clean up waag-secure-boot doc
- 9d01d8ad - doc: instruction of enabling the laag secure boot
- af61b486 - doc: update timer hld
- ea601e42 - doc: update memory management hld
- c8abc7cb - Added entry for waag-secure-boot tutorial (added in #3883)
- f34f87fa - doc:update acrn_configuration_tool
- 0e652546 - doc: add waag secure boot enabling
- 0d2cdd95 - Clean up language in the acrn_quick_setup script.
- cc61ae7c - doc: schedule_vcpu was removed
- fbc54a18 - doc: Remove apl gsg and merge contents into rt gsg
- f7651009 - doc: remove redundant copy of ovmf.fd firmware
- 67d4a38f - doc: remove the guest cpu number option ‘-c’ from the document
- fe73b2df - doc: OVMF high level description
- 625a6aab - Doc: Update system power management doc
- 383d53b4 - doc: Update hv power management doc
- 4586acd4 - document: update HLD for hypervisor overview
- 5583c864 - document: update HLD for cpu virtualization
- 2077d79d - doc: fix remaining masked doc build errors
- f3f638fa - doc: doc build errors not being reported
- 9e34a3fd - Doc: remove broken links in RNs.
- 97a0464a - doc: fix broken include paths
- 1a277f75 - doc: fix vuart-virt-hld errors
- bbc228e6 - doc: Add industry argument for auto setup script
- fd821d55 - doc: add atkbdc emulation doc
- 6513db40 - doc: add HLD for CAT
- b6007d05 - document: update HLD for hypervisor startup
- 93c45f1a - Doc: update physical interrupt HLD
- f3f48c3b - doc: add system timer virtualization
- 924f4007 - doc: Adding a section for ACRN requirements on a processor
- 586a947d - doc: add hostbridge emulation doc
- 2e2c3db5 - doc: add RTC emulation in hypervisor doc
- b5491474 - doc: add virtio-gpio doc
- 5466c8e4 - Doc: remove tutorials/rt_linux.rst file
- d0e1f05e - doc: Align the updates of rt gsg with 1.3
- b4a4d46c - doc: add entry for passthru realization
- e85ff56c - doc: modify virtio-i2c doc path
- abfe3e40 - doc: add UART emulation in hypervisor doc
- 9493fcdf - doc: add ahci virtualization introduction
- 2cfcb62d - document: update HLD for vm management
- b92cb4cb - acrn-config: chose ttyS1 for vuart1
- 95a9f6d9 - hv: update the flow to get trampoline buffer in direct boot mode
- c09723bd - hv[v3]: hide AP trampoline code from service VM
- 04f07535 - hv:refine modify_or_del_pte/pde/pdpte()function
- 3f3a51ba - Revert “Makefile: add default defconfig for new board”
- 99e2d6bc - Revert “OVMF release v1.4”
- c1225050 - acrn-config: add ‘xhci’ usb mediator for laag and waag
- c0e1a5d7 - acrn-config: add serial config in new $(board).config
- 9ddf2766 - Makefile: add default defconfig for new board
- 382af0b1 - acrn-config: refine mem_size_set function
- 1818dfd9 - acrn-config: refine interrupt_storm function
- 958830fb - acrn-config: add support to generate launch script
- 70a405b8 - acrn-config: remove runC script from unnecessary launch script
- 2e647844 - acrn-config: add config files for whl-ipc-i7 board
- 7587ccba - acrn-config: add config files for whl-ipc-i5 board
- 084bf6e1 - acrn-config: remove parser for console
- a503fdce - HV: Fix poweroff issue of hard RTVM
- 5ca26d3b - Modify KBL-NUC/SDC for default build remove acrn.efi and modify KBL-NUC/SDC for default build Tracked-On: #3953 Signed-off-by: wenlingz <wenling.zhang@intel.com>
- c94b1fcd - acrn-config: ‘keep_gsi’ flag set for Android vm
- 96f4d511 - acrn-config: Remove virtio-blk for PREEMPT-RT LINUX
- cc7a85ae - acrn-config: modify vxworks uos id for industry launch config
- 39f300a5 - acrn-config: parse rootfs_img and refine virtio-blk
- 5f5f3dfd - acrn-config: modify board name to uos name
- 5cbc97ba - acrn-config: add mem_size for launch vm
- 79fb22de - acrn-config: add the ‘”’ character for launch script
- d5c3523d - hv: Update industry scenarios configuration
- 6f7081f6 - acrn-config: remove vm3 for industry scenario
- 9143e563 - dm: update ACPI with latest ASL standard
- 5f8e7a6c - hv: sched: add kick_thread to support notification
- 810305be - hv: sched: disable interrupt when grab schedule spinlock
- 15c6a3e3 - hv: sched: remove do_switch
- f04c4912 - hv: sched: decouple scheduler from schedule framework
- cad195c0 - hv: sched: add pcpu_id in sched_control
- 84e5a8e8 - OVMF release v1.4
- feba8369 - acrn-config: refine ttyS info of board file
- b6a80520 - acrn-config: filter out the proper wifi/ethernet device
- defeb851 - acrn-config: fix the issue no error message in launch setting
- d9f0d8dc - acrn-config: fix the wrong ‘key’ type returned to webUI
- e7134585 - makefile: add dash support to build efi
- 9ea7a85c - acrn-config: set default package value for _S3 and _S5
- 24d3eaba - acrn-config: skip git environment check when not do git commit
- fbd8597f - acrn-config: refine ‘lpc’ setting with console type
- 2e62ad95 - hv[v2]: remove registration of default port IO and MMIO handlers
- 73b8c91e - Misc: lifemngr-daemon-on-UOS for windows
- 82a0d39e - hv:fix reference to uninitialized variable in vmsi_remap()
- 1c7bf9fd - acrn-config: refine the vbootloader of vm
- a7162359 - acrn-config: add ‘–windows’ option for WaaG vm
- 343aabca - doc:Update hypercall and upcall
- 6f9367a5 - Doc: Add ART virtualization hld
- b3142e16 - doc: update hld-security verified boot section
- edffde4e - doc: update MSR virtualization in HLD
- 227ee64b - doc: update IO/MMIO HLD
- d541ee90 - doc: update CR HLD
- 050c0880 - doc: update CPUID HLD
- d81872ba - hv:Change the function parameter for init_ept_mem_ops
- 0f70a5ca - hv: sched: decouple idle stuff from schedule module
- 27163df9 - hv: sched: add sleep/wake for thread object
- 9b8c6e6a - hv: sched: add status for thread_object
- fafd5cf0 - hv: sched: move schedule initialization to each pcpu init
- dadcdcef - hv: sched: support vcpu context switch on one pcpu
- 7e66c0d4 - hv: sched: use get_running_vcpu to replace per_cpu vcpu with cpu sharing
- 891e4645 - hv: sched: move pcpu_id from acrn_vcpu to thread_object
- f85106d1 - hv: Do not reset vcpu thread’s stack when reset_vcpu
- 3072b6fc - Doc: Grammar add for config tool doc
- 6f5dd2da - doc: acrn_configuration_tool add one more scenario xml element description
- 1d194ede - hv: support reference time enlightenment
- 048155d3 - hv: support minimum set of TLFS
- 009d835b - acrn-config: modify board info of block device info
- 96dede43 - acrn-config: modify ipu/ipu_i2c device launch config of apl-up2
- 001c929d - acrn-config: correct launch config info for audio/wifi defice of apl-mrb
- 2a647fa1 - acrn-config: define vm name for Preempt-RT Linux in launch script
- a2430f13 - acrn-config: refine board name with undline_name api
- 95b9ba36 - acrn-config: acrn-config: add white list to skip item check
- fc40ee4c - vm-manager: fix improper return value check for “strtol()”
- 9c67d9b9 - grammar edits for the hld security document
- 15e8130f - doc: hld-security hypervisor enhancement section update
- 27272634 - doc: hld-security memory management enhancement update
- 81a76662 - doc: hld-security introduction update
- 38d70690 - doc: add description for usb-virt-hld
- 8a2a56e8 - Doc: Update hld-trace-log.rst
- 96b4a6db - acrn-config: add ‘boot_audio_option’ while auido/audio_codec set
- 1326eec4 - acrn-config: refine the tools for audio/audio_codec
- 950e3aa2 - acrn-config: refine parameters for media_pt function
- 292d1a15 - hv:Wrap some APIs related with guest pm
- 988c1e48 - doc: Align CL version for RT GSG and NUC GSG
- e7ef57a9 - dm: fix mutex lock issue in tpm_rbc.c
- 73ac285e - acrn-config: add ‘run_container’ back to the launch script
- 55e4f0af - acrn-config: remove ‘-V’ option from launch config
- aee3bc36 - acrn-config: enable item check for launch config tool
- 98dc755e - dm: NVME bdf info update on KBLNUC7i7DNH
- 712dfa95 - minor content edits to virtio-rnd doc
- 89ec29e1 - doc: merge random device doc to virtio-rnd doc
- f2fb227b - doc: detail change for hld-devicemodel
- d204fdee - doc: add ‘rsync’ to the ACRN builder container
- d8deaa4b - dm: close filepointer before exiting acrn_load_elf()
- b5f77c07 - doc: add socket console backend for virtio-console
- d3ac30c6 - hv: modify SOS i915 plane setting for hybrid scenario
- c74a197c - acrn-config: modify SOS i915 plane setting for hybird xmls
- e1a2ed17 - hv: fix a bug that tpr threshold is not updated
- afb3608b - acrn-config: add confirmation for commit of generated source in config app
- 8eaee3b0 - acrn-config: add “enable_commit” parameter for config tool
- 780a53a1 - tools: acrn-crashlog: refine crash complete code
- 43b2327e - dm: validation for input to public functions
- 477f8331 - dm: modify DIR handler reference postion
- de157ab9 - hv: sched: remove runqueue from current schedule logic
- 837e4d87 - hv: sched: rename schedule related structs and vars
- 89f53a40 - acrn-config: supply optional passthrough device for vm
- 82609463 - doc: Clear Linux “ACRN builder” container image
- 44d2a56b - doc: fix missing words issue in acrn configuration tool doc
- d19592a3 - hv: vmsr: disable prmrr related msrs in vm
- de0a5a48 - hv:remove some unnecessary includes
- 72232daa - dm: reduce potential crash caused by LIST_FOREACH
- e6e0e277 - dm: refine the check of return value of snprintf
- 44c11ce6 - acrn-config: fix the issue some select boxes disappear after edited
- c7ecdf47 - Corrected number issue in GSG for ACRN Ind Scenario file
- 051a8e4a - doc: update Oracle driver install
- b73b0fc2 - doc: ioc: remove two unuse parts
- 6f7ba36e - doc: move the “Building ACRN in Docker” user guide
- 1794d994 - doc: update doc generation tooling to only work within the $BUILDDIR
- 0dac373d - hv: vpci: remove pci_msi_cap in pci_pdev
- b1e43b44 - hv: fix error debug message in hcall_set_callback_vector
- 62ed91d3 - acrn-config: update vcpu affinity in web UI
- c442f3f4 - acrn-config: keep align with vcpu_affinity for vm config
- db909edd - acrn-config: refine the data type for member of class
- ee66a94c - acrn-config: grab Processor CPU number from board information
- fcbf9d7b - makefile: fix efi stub install issue
- c3eb0d7f - dm: switch to launch RT_LaaG with OVMF by default
- 8c9c8876 - hv: vpci: remove PC-Card type support
- a4d562da - dm: Add Oracle subsystem vendor ID
- bb1a8eea - acrn-config: fix pci sub class name contain “-” and ‘ ‘
- 43410fd0 - Makefile: Add new build target for apl-up2/uefi/hybrid
- d0489ef3 - Makefile: Add acrn build/install functions
- df5ef925 - Misc: life_mngr clear compile warning
- 91366b87 - Misc: lifemngr add Makefile
- 28b50463 - hv: vm: properly reset pCPUs with LAPIC PT enabled during VM shutdown/reset
- 0906b25c - Makefile: build default acrn.efi with nuc6cayh
- 64742be8 - doc: fix broken link in release notes 1.3
- 9b1caeef - version: 1.4-unstable