diff --git a/gofurther/checks.md b/gofurther/checks.md index b6b32f9..ec2e0fe 100644 --- a/gofurther/checks.md +++ b/gofurther/checks.md @@ -2,7 +2,7 @@ title: Performs a few checks on Phyllome OS description: published: true -date: 2021-11-27T11:19:25.159Z +date: 2021-11-27T11:38:00.341Z tags: editor: markdown dateCreated: 2021-11-13T11:39:13.790Z @@ -63,9 +63,60 @@ cat /proc/cpuinfo | grep svm '(vmx|svm)' flags : fpu vme de [...] svm [...] sme sev sev_es ``` -### Check if IOMMU groups have been created are present - ## Validate specific features on the host > Those commands are valid for only specific Phyllome OS editions -{.is-info} \ No newline at end of file +{.is-info} + +### IOMMU-related checks + +If your computer ships with advanced hardware virtualization features (*AMD Vi* or Intel *VT-d*), Phyllome OS should have automatically activated them. + +* Verify if that is the case by using the following command, courtesy of the [Archlinux wiki](https://wiki.archlinux.org/title/PCI_passthrough_via_OVMF#Enabling_IOMMU). + +``` +dmesg | grep -i -e DMAR -e IOMMU +``` +* Make sure the result look like this: +``` +[ 0.600228] iommu: Default domain type: Translated +[ 0.624416] pci 0000:00:00.2: AMD-Vi: IOMMU performance counters supported +[ 0.624444] pci 0000:00:01.0: Adding to iommu group 0 +[...] +[ 0.624690] pci 0000:0b:00.4: Adding to iommu group 15 +[ 0.627236] pci 0000:00:00.2: AMD-Vi: Found IOMMU cap 0x40 +[ 0.627987] perf/amd_iommu: Detected AMD IOMMU #0 (2 banks, 4 counters/bank). +``` +* You may also want to learn how isolated your devices are. To do that, use the following script, courtesy of the [Archlinux wiki](https://wiki.archlinux.org/title/PCI_passthrough_via_OVMF#Ensuring_that_the_groups_are_valid): + +``` +#!/bin/bash +shopt -s nullglob +for g in `find /sys/kernel/iommu_groups/* -maxdepth 0 -type d | sort -V`; do + echo "IOMMU Group ${g##*/}:" + for d in $g/devices/*; do + echo -e "\t$(lspci -nns ${d##*/})" + done; +done; +``` + +``` +IOMMU Group 0: +[...] +01:00.0 Non-Volatile memory controller [0108]: Intel Corporation SSD 660P Series [8086:f1a8] (rev 03) + 02:00.0 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Device [1022:43ee] + 02:00.1 SATA controller [0106]: Advanced Micro Devices, Inc. [AMD] Device [1022:43eb] +[...] + 04:00.0 VGA compatible controller [0300]: NVIDIA Corporation GM107 [GeForce GTX 750] [10de:1381] (rev a2) + 04:00.1 Audio device [0403]: NVIDIA Corporation GM107 High Definition Audio Controller [GeForce 940MX] [10de:0fbc] (rev a1) + 07:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller [10ec:8125] (rev 05) +IOMMU Group 1: +[...] +09:00.0 VGA compatible controller [0300]: NVIDIA Corporation GM204 [GeForce GTX 970] [10de:13c2] (rev a1) + 09:00.1 Audio device [0403]: NVIDIA Corporation GM204 High Definition Audio Controller [10de:0fbb] (rev a1) +[...] +IOMMU Group 14: + 0b:00.3 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller [1022:149c] +IOMMU Group 15: + 0b:00.4 Audio device [0403]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse HD Audio Controller [1022:1487] +```