[PATCH v3] config-tools: board inspector exits if the VMD is configured


Yang, Yu-chu
 

From: yuchuyang <yu-chu.yang@...>

Board inspector does not support multiple PCI segment. Stop running and
throw out the message for user to disable VMD from BIOS setting.

v2->v3
Refine the logger message of check_pci_domains.

Tracked-On: #8327
Signed-off-by: yuchuyang <yu-chu.yang@...>
---
misc/config_tools/board_inspector/board_inspector.py | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/misc/config_tools/board_inspector/board_inspector.py b/misc/config_tools/board_inspector/board_inspector.py
index 645f1b375..bf2d47b3d 100755
--- a/misc/config_tools/board_inspector/board_inspector.py
+++ b/misc/config_tools/board_inspector/board_inspector.py
@@ -83,10 +83,12 @@ def native_check():
"Only KVM or QEMU is supported. Unexpected results may occur.")

def check_pci_domains():
- root_buses = filter(lambda x: x.startswith("pci"), os.listdir("/sys/devices"))
- domain_ids = set(map(lambda x: x.split(":")[0].replace("pci", ""), root_buses))
+ root_buses = os.listdir("/sys/bus/pci/devices/")
+ domain_ids = set(map(lambda x: x.split(":")[0], root_buses))
if len(domain_ids) > 1:
- logger.fatal(f"ACRN does not support platforms with multiple PCI domains {domain_ids}. Check if the BIOS has any configuration that consolidates those domains into one.")
+ logger.fatal(f"ACRN does not support platforms with multiple PCI domains {domain_ids}. " \
+ "Check if the BIOS has any configuration that consolidates those domains into one. " \
+ "Known causes of multiple PCI domains include: VMD (Volume Management Device).")
sys.exit(1)

def bring_up_cores():
--
2.25.1


Junjie Mao
 

-----Original Message-----
From: Yang, Yu-chu <yu-chu.yang@...>
Sent: Friday, November 18, 2022 1:52 PM
To: acrn-dev@...
Cc: Mao, Junjie <junjie.mao@...>
Subject: [PATCH v3] config-tools: board inspector exits if the VMD is configured

From: yuchuyang <yu-chu.yang@...>

Board inspector does not support multiple PCI segment. Stop running and
throw out the message for user to disable VMD from BIOS setting.

v2->v3
Refine the logger message of check_pci_domains.

Tracked-On: #8327
Signed-off-by: yuchuyang <yu-chu.yang@...>
Reviewed-by: Junjie Mao <junjie.mao@...>

One wording comment below.

---
misc/config_tools/board_inspector/board_inspector.py | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/misc/config_tools/board_inspector/board_inspector.py
b/misc/config_tools/board_inspector/board_inspector.py
index 645f1b375..bf2d47b3d 100755
--- a/misc/config_tools/board_inspector/board_inspector.py
+++ b/misc/config_tools/board_inspector/board_inspector.py
@@ -83,10 +83,12 @@ def native_check():
"Only KVM or QEMU is supported. Unexpected results may occur.")

def check_pci_domains():
- root_buses = filter(lambda x: x.startswith("pci"), os.listdir("/sys/devices"))
- domain_ids = set(map(lambda x: x.split(":")[0].replace("pci", ""), root_buses))
+ root_buses = os.listdir("/sys/bus/pci/devices/")
+ domain_ids = set(map(lambda x: x.split(":")[0], root_buses))
if len(domain_ids) > 1:
- logger.fatal(f"ACRN does not support platforms with multiple PCI domains
{domain_ids}. Check if the BIOS has any configuration that consolidates those domains into
one.")
+ logger.fatal(f"ACRN does not support platforms with multiple PCI domains
{domain_ids}. " \
+ "Check if the BIOS has any configuration that consolidates those domains into one.
" \
+ "Known causes of multiple PCI domains include: VMD (Volume Management Device).")
State explicitly that the cause is "VMD being enabled".

sys.exit(1)

def bring_up_cores():
--
2.25.1