mirror of
https://github.com/aljazceru/kata-containers.git
synced 2025-12-24 01:24:26 +01:00
e654dbd8367371c1b34776445a402d3c90f0dc66
As memory hotplug for arm64 by acpi is not ready on qemu, we choose "probe" instead. You can refer to [1] to get more infomation about "probe". The process of memory hotplug by "probe" in kata lies below: firstly, add memory in qemu qmp; secondly, echo the start phyical address of that memory to /sys/devices/system/memory/probe, which will be done through kata-agent; thirdly, excute online op, then this newly added memory is capable to be used. All functions in this patch will be called after "echo" op. It can be divided into two parts: 1. create page table for that memory; 2. add that memory to memblock. In this patch, NUMA must be turned off for not all arm64 machine supports NUMA. As the newly added memory should be placed from 2T to 6T which is decided in qemu and phyical address and virtual address will be one-one mapping when create pgd for that memory, we must config ARM64_VA_BITS as 48. Also some configs should be turned on, especially "ARCH_MEMORY_PROBE". We have tested this patch integrated with another patch which performed that echo op. It works well when using "-m" in command line when start a kata-container on aarch64 machine. This patch derived from Maciej Bielski. You can refer to [2] to get full infomation about it. [1] https://www.kernel.org/doc/Documentation/memory-hotplug.txt [2] https://lkml.org/lkml/2017/11/23/183 Fixes: #309 Signed-off-by: Jianyong Wu <jianyong.wu@arm.com> Signed-off-by: Jia He <justin.he@arm.com> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
Kata Containers packaging
Kata Containers currently supports packages for many distributions. Tooling to aid in creating these packages are contained within this repository.
In addition, Kata build artifacts are available within a container image, created by a Dockerfile. Reference daemonsets are provided in kata-deploy, which make installation of Kata Containers in a running Kubernetes Cluster very straightforward.
Description
Languages
Rust
57%
Go
27%
Shell
8%
RPC
5.9%
Makefile
1%
Other
1.1%