mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-09-13 21:09:31 +00:00
docs: add doc about building kernel with upcall and GPU hotplug
We need some docs about how to build a guest kernel to support both Upcall and Nvidia GPU Passthrough(hotplug) at the same time. This patch is to do such thing to help users to build a guest kernel with support both Upcall and Nvidia GPU hotplug/unlplug. Fixes: #9140 Signed-off-by: Alex Lyn <alex.lyn@antgroup.com>
This commit is contained in:
@@ -154,6 +154,29 @@ $ ./build-kernel.sh -v 5.15.23 -g nvidia build
|
|||||||
$ sudo -E ./build-kernel.sh -v 5.15.23 -g nvidia install
|
$ sudo -E ./build-kernel.sh -v 5.15.23 -g nvidia install
|
||||||
```
|
```
|
||||||
|
|
||||||
|
However, there are special cases like `Dragonball VMM`. It directly supports device `hot-plug/hot-unplug`
|
||||||
|
via upcall to avoid `ACPI` virtualization and minimize `VM` overhead. Since upcall isn't upstream kernel
|
||||||
|
code, using `Dragonball VMM` for NVIDIA GPU `hot-plug/hot-unplug` requires applying the Upcall patchset in
|
||||||
|
addition to the above kernel configuration items. Follow these steps to build for NVIDIA GPU `hot-[un]plug`
|
||||||
|
for `Dragonball`:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
# Prepare .config to support both upcall and nvidia gpu
|
||||||
|
$ ./build-kernel.sh -v 5.10.25 -e -t dragonball -g nvidia -f setup
|
||||||
|
|
||||||
|
# Build guest kernel to support both upcall and nvidia gpu
|
||||||
|
$ ./build-kernel.sh -v 5.10.25 -e -t dragonball -g nvidia build
|
||||||
|
|
||||||
|
# Install guest kernel to support both upcall and nvidia gpu
|
||||||
|
$ sudo -E ./build-kernel.sh -v 5.10.25 -e -t dragonball -g nvidia install
|
||||||
|
```
|
||||||
|
|
||||||
|
> **Note**:
|
||||||
|
> - `-v 5.10.25` is for the guest kernel version.
|
||||||
|
> - `-e` here means experimental, mainly because `upcall` patches are not in upstream Linux kernel.
|
||||||
|
> - `-t dragonball` is for specifying hypervisor type.
|
||||||
|
> - `-f` is for generating `.config` file.
|
||||||
|
|
||||||
To build NVIDIA Driver in Kata container, `linux-headers` are required.
|
To build NVIDIA Driver in Kata container, `linux-headers` are required.
|
||||||
This is a way to generate deb packages for `linux-headers`:
|
This is a way to generate deb packages for `linux-headers`:
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user