Commit Graph

7880 Commits

Author SHA1 Message Date
Kunhui-Li 80766124a9 config_tools: fix the issue Service VM type is updated by UI automatically
Currently, if I update Pre-Launched VM type to real-time, select PCPU ID and
enable Real-time vCPU, then we update the name of sevice VM, finally, click the save button.
we will see the type of service vm is updated to RTVM. It is unexpected.

So this patch removes the logic of hiding service VM type, and only allows user
selecting Standard VM type to fix the issue that the service vm type is updated
by UI automatically.

Tracked-On: #6690
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2022-06-29 13:53:42 +08:00
Weiyi Feng 08d3435ffe config_tools: update configurator readme windows cmd line path split
update configurator readme windows cmd line path split

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-29 13:53:42 +08:00
Weiyi Feng 8eb1bbda3f config_tools: add error icon in tabBox when validate failed
add error icon in tabBox when validate failed

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-29 13:53:42 +08:00
Weiyi Feng 89bfe20e2d config_tools: update configurator readme
update configurator readme

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-29 13:53:42 +08:00
Ziheng Li 3b5fbade33 config_tools: refine vm_type in upgrader
Rename "vm_type" from "SOS_VM" to "STANDARD_VM".

Tracked-On: #6690
Signed-off-by: Ziheng Li <ziheng.li@intel.com>
2022-06-29 13:53:42 +08:00
Fei Li ce34ca658e misc: life_mngr: generate system_reboot_trigger_win.py script when build life_mngr
generate system_reboot_trigger_win.py script when build life_mngr for Waag.

Tracked-On: #7215
Signed-off-by: Fei Li <fei1.li@intel.com>
2022-06-29 13:53:42 +08:00
Fei Li 2c7fbecc89 misc: life_mngr: fix a bug about receiving message
On some extreme circumstances, the client can't send the whole message out
in a short time. In this case, the server can't receive the whole message
because now server didn't check the integrity of the message.

This patch add this by checking the terminal character of the message.

Tracked-On: #7215
Signed-off-by: Fei Li <fei1.li@intel.com>
2022-06-29 13:53:42 +08:00
Kunhui-Li a39e38f71e config_tools: fix the issue that fail to import scenario
fix the typo in validateScenario.py because it leads to
fail to import scenario xml.

Tracked-On: #6690
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2022-06-29 13:53:42 +08:00
Weiyi Feng fb84b519ab config_tools: fix UI cpu_affinity cpu_id validation logic
fix UI cpu_affinity cpu_id validation logic

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-29 13:53:42 +08:00
Weiyi Feng 78a87b613b config_tools: filter out non-existing history path
filter out non-existing history path

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-29 13:53:42 +08:00
Chenli Wei 7965b66629 misc: modify the vUART index order and irq
There were some legacy logic of the current code, the PCI vUART index
in the launch script have not count the vUART of S5 and life_mngr_win
use the COM2 as default vUART.

This patch change the vUART index and irq to adapt above logic and all
of these legacy code will be refine next version.

Tracked-On: #6690
Signed-off-by: Chenli Wei <chenli.wei@intel.com>
2022-06-29 13:53:42 +08:00
Kunhui-Li ecfecd40a0 config_tools: update the hugepage algorithm
update the hugepages algorithm as the following steps.
1. calculate the total hugepages of service vm using the formula.
"total memory*0.98 - the memory consumed by pre-launched VMs - 5G
-300M*num(number of virtio gpu instance)".
2. calculate hugepage 1G based post-launched vm memory setting.
3. check if the memory configured in post launch VMs is not larger than
the total hugepages.

Compared with the previous version, this patch removes the 2M hugepage
and the correction value, also update the formula of total hugepage.

Tracked-On: #7301
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2022-06-29 13:53:42 +08:00
Junjie Mao 256dd158c3 config_tools: fix a module resolving issue in elementpath overlay
The library module introduced by commit 2cd13026e ("misc: move the RDT
interface to common library") was put under the library/ directory which is
not by default searchable from elementpath_overlay. This patch works around
the issue by adding that path to sys.path.

Also fix a typo in the RDT checking assertion.

Tracked-On: #6690
Signed-off-by: Junjie Mao <junjie.mao@intel.com>
2022-06-29 13:53:42 +08:00
David B. Kinder 30fd08b1a4 configurator: Remove duplicate vCPU assignment error message
Remove duplicate assertion and improve message text.

Tracked-On: #7745

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2022-06-29 13:53:42 +08:00
Chenli Wei 72c406c2b7 misc: move the RDT interface to common library
The current RDT class and interface was define by the clos.py which is
mix get and merge RDT policy, create clos nodes.

Now we need call these interface to check the CLOS IDs number after
merged RDT policy, so this patch abstract the RDT interface to common
and add an assert to check the CLOS IDs number.

Tracked-On: #6690
Signed-off-by: Chenli Wei <chenli.wei@intel.com>
Signed-off-by: Junjie Mao <junjie.mao@intel.com>
2022-06-29 13:53:42 +08:00
Weiyi Feng 27525d0ae6 config_tools: add cpu_affinity error message
add cpu_affinity error message

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-29 13:53:42 +08:00
Weiyi Feng e25087c539 config_tools: add * in cpu_affinity widget first line of pcpu config
add * in cpu_affinity widget first line of pcpu config

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-29 13:53:42 +08:00
Junjie Mao fbfa81a665 config_tools: conduct full validation on save
This patch makes the configurator validate both syntactically and
semantically the resulting scenario XML everytime users save their
configurations. This allows the validation to catch all errors and report
status properly.

While a full validation is conducted, the syntactic errors are not shown
at the top of the forms in the same way as the semantic ones. This is
because syntactic rules are already built into the JSON schema and
will be warned real-time under the corresponding widgets. There is
no need to duplicate such errors. At the same time, the messages of
syntactic errors are generated by xmlschema which may not look
friendly to end users who do not have knowledge about the internal
structures of scenario XMLs.

Tracked-On: #6691
Signed-off-by: Junjie Mao <junjie.mao@intel.com>
2022-06-29 13:53:42 +08:00
Junjie Mao 5fcb58a4b2 config_tools: relax the checks of scenario XMLs from users
Today we are using, in the configurator, the complete scenario XML
schema to validate XML files given by users. While this helps identify
invalid XMLs at an early stage, such checks are too strict because the
configurator users may save invalid XMLs if they keep some errors in
the forms unresolved, and we do allow them to save anytime they
want. As a result, users may save something that they cannot load
back anymore.

This patch introduces a tailored version of the scenario XML schema
which only verifies the existence of the top-level nodes that the
configurator assumes to exist. This seems to be a good balance that
blocks XMLs that are broken or using old formats but permits those
that has local and fixable data issues.

Tracked-On: #6691
Signed-off-by: Junjie Mao <junjie.mao@intel.com>
2022-06-29 13:53:42 +08:00
David B. Kinder 6b6f961088 Improve description and title for vUART connection end point VM name
Tracked-On: #5692

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2022-06-29 13:53:42 +08:00
Weiyi Feng 753b2cf2c3 Revert "config_tools: add SyntacticValidationStage before save scenario"
This reverts commit 68636087a6.

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-29 13:53:42 +08:00
Ziheng Li c24515cb7c config_tools: refine some issues in upgrader
1.refine IVSHMEM_REGION node. Now if "IVSHMEM_REGION" node is empty,
the method "add_ivshmem_region" won't show an error.
2.refine vm_type node. Add try expect into method "move_vm_type", and
now if there is no "vm_type" node, the .pop() operation won't lead
to an IndexError.
3.refine move_memory method. Add handling process of "size" node,
if it's text is a hex number.

Tracked-On: #6690
Signed-off-by: Ziheng Li <ziheng.li@intel.com>
2022-06-29 13:53:42 +08:00
Ziheng Li 91f52b3b62 config-tools:refine memory allocation for vm
1.The memory allocation effect is tested under XML files on multiple platforms.
2.Modified the conversion of memory units during memory reading and processing (MB to Byte).

Tracked-On: #7730
Signed-off-by: Ziheng Li <ziheng.li@intel.com>
2022-06-29 13:53:42 +08:00
Weiyi Feng a60b774c61 config_tools: add SyntacticValidationStage before save scenario
add SyntacticValidationStage before save scenario

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-29 13:53:42 +08:00
Ziheng Li 05fd75eeda config_tools: refine issues in the upgrader
When run the upgrader.py to merge scenario XML and launch XML files,
deleted "desc" text in "usb_xhci" node, and added the "vbootloader"
text from "Enable" to "y", from "Disable" to "n".

Tracked-On: #7660
Signed-off-by: Ziheng Li <ziheng.li@intel.com>
2022-06-29 13:53:42 +08:00
Yuanyuan Zhao 4bb19ace20 config_tools: add default value to 'vm_type'
Set 'STANDARD_VM' as default value for 'vm_type'.

Tracked-On: #7726
Signed-off-by: Yuanyuan Zhao <yuanyuan.zhao@linux.intel.com>
2022-06-29 13:53:42 +08:00
David B. Kinder 2f03a7525f doc: update VM types description to use DX-friendly title
Missed a use of the XML element name instead of the DX-friendly title in
the option description.  (For those paying attention, the default value
shown in the description also uses the XML element name, but we don't
have a convenient way to turn that string into the corresponding
acrn:title value.

Tracked-On: #5692

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2022-06-29 13:53:42 +08:00
Chenli Wei 4c56fa8ddb misc: modify the HV start address
The current code use a start address and hv_ram_size to find the start
address of acrn.bin, the start address is 32M which leaving too much
memory and will be load modules by grub, sometimes these modules will
override the HV log region.

This patch set the start address to 4M to avoid the above issue as much
as possible.

This algorithm depend on the board info, so the board XML should be
generate again if user change the SSRAM.

Tracked-On: #6690
Signed-off-by: Chenli Wei <chenli.wei@linux.intel.com>
2022-06-29 13:53:42 +08:00
Weiyi Feng 7c80bfd86d config_tools: remove ivshmem region id from ui
remove ivshmem region id from ui.

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-29 13:53:42 +08:00
hangliu1 cfd677c782 config tool: change vm_type to required field
hide vm_type in UI for service vm, and change it to
required field, since lack of it in xml may lead to
wrong inference for vm severity.

Tracked-On: #6690
Signed-off-by: hangliu1 <hang1.liu@linux.intel.com>
2022-06-29 13:53:42 +08:00
Zhao ea8651cbd6 config_tools: support add vm_type for a new Service VM
For vm_type is a required property, support set vm_type to a new added
Service VM.

Signed-off-by: Zhao <yuanyuan.zhao@intel.com>
2022-06-29 13:53:42 +08:00
Yifan Liu c32b182958 misc: configurator: fix minor bug of IVSHMEM region name
IVSHMEM region name input value may be null after saving the scenario.
Add a null check to avoid marking empty input as correct.

Tracked-On: #7707
Signed-off-by: Yifan Liu <yifan1.liu@intel.com>
2022-06-29 13:53:42 +08:00
Chenli Wei ddefcccb26 misc: add processing for Console vUART is None
The current code assume there was one Console vUART all the time, and
there is an issue when the Console vUART is None.

This patch add the case of "None" and add assert to check no serial
console config.

Tracked-On: #6690
Signed-off-by: Chenli Wei chenli.wei@intel.com
2022-06-29 13:53:42 +08:00
Qiang Zhang 181ab6afea misc: configurator: Switch to basic form after switching VM or HV tabs
Switch to basic form after switching VM or HV tabs to make the basic
form default view.

Tracked-On: #7712
Signed-off-by: Qiang Zhang <qiang4.zhang@intel.com>
2022-06-29 13:53:42 +08:00
Ziheng Li d5c36632f1 config_tools: refine issues in the upgrader
Now in scenario XML file:
1.The vm memory node info has been transformed into a new form(
e.g. hpa_region, start_hpa, size_hpa, and size).
2.The clos node info will be dropped during the upgrade process,
and users can see the discard waring info.
3.During the upgrade process, the node "RELOC" will be renamed
to "RELOC_ENABLED", the node "MULTIBOOT2" will be renamed to
"MULTIBOOT2_ENABLED".

Tracked-On: #7660
Signed-off-by: Ziheng Li <ziheng.li@intel.com>
2022-06-29 13:53:42 +08:00
Yifan Liu e549f73f8e misc: configurator: Apply pattern check to IVSHMEM name
This patch applies pattern check to IVSHMEM name. Report error if regex
does not match.

Tracked-On: #7707
Signed-off-by: Yifan Liu <yifan1.liu@intel.com>
2022-06-29 13:53:42 +08:00
Yifan Liu 1f4ac22bb1 misc: Limit IVSHMEM region name to 27 characters
Current IVSHMEM region name does not have size limit. This patch limits
it to 27 characters so that land specifier ("hv:/" or "dm:/") plus region
name can fit into an array of 32 characters.

Also change some descriptive messages.

Tracked-On: #7707
Signed-off-by: Yifan Liu <yifan1.liu@intel.com>
2022-06-29 13:53:42 +08:00
David B. Kinder f11d00c549 doc: edit RDT_ENABLED tooltip
Tracked-On: #5692

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2022-06-29 13:53:42 +08:00
Chenli Wei 747b32ef5d misc: modify the logic of generate HV_RAM_START
The current code assume that there must be an HV_RAM_START element in
the scenario and we will generate it if user have not set, the default
value of HV_RAM_START is 0x00400000 which cause an overlap issue.

This patch remove the requires of HV_RAM_START element, calculate
HV_RAM_SIZE and find a region of e820 to run the ACRN which start
address will be HV_RAM_START.

It is still valid if the user set HV_RAM_START by XMLs.

Tracked-On: #6690
Signed-off-by: Chenli Wei <chenli.wei@intel.com>
2022-06-29 13:53:42 +08:00
Yuanyuan Zhao 112599c70d config_tools: clear schema files
Clear schema files of config tools when 'make clean'.

Tracked-On: #7508
Signed-off-by: Yuanyuan Zhao <yuanyuan.zhao@linux.intel.com>
2022-06-29 13:53:42 +08:00
Weiyi Feng 210cd9c12c config_tools: CAT is no longer unchecked when VCAT is unchecked
CAT is no longer unchecked when VCAT is unchecked

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-29 13:53:42 +08:00
hangliu1 0813247eb0 config tool:add schema check for UI name validation
ivshmem name and vuart connection vm name are required in UI, so
add the check in case user miss setting them.

Tracked-On: #7700
Signed-off-by: hangliu1 <hang1.liu@linux.intel.com>
2022-06-29 13:53:42 +08:00
David B. Kinder 54e275c8bb doc: edit schema assert messages for clarity and grammar
Use DX names (acrn:title) instead of element names in messages.
Add missing message in rdt_support.xsd (all asserts need an annotation
with documentation for the error message that will be reported).

Tracked-On: #7685

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2022-06-29 13:53:42 +08:00
Chenli Wei ecaecaf904 misc: fix the conflict between S5 and LPC
The current code use COM1 or COM2 for LPC and there is an conflict with
S5 feature.

This patch filter these COM Ports and fix the above issue.

Tracked-On: #6690
Signed-off-by: Chenli Wei <chenli.wei@intel.com>
2022-06-29 13:53:42 +08:00
Weiyi Feng d93b773755 config_tools: delete the old board file when the new board file is imported successfully.
delete the old board file when the new board file is imported successfully.

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-29 13:53:42 +08:00
Weiyi Feng f5d3d71526 config_tools: disallowed user set CAT CLOS_MASK to 0
disallowed user set CAT CLOS_MASK to 0

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-29 13:53:42 +08:00
Weiyi Feng d7c7808fc2 config_tools: CAT is no longer unchecked when CDP is unchecked
CAT is no longer unchecked when CDP is unchecked

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-29 13:53:42 +08:00
Weiyi Feng 92bc8034be config_tools: fix vmNameChange event never called issue
fix vmNameChange event never called issue

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-29 13:53:42 +08:00
Conghui 12b6faf375 config-tools: fix vBDF issue for IVSHMEM
1. Fix the issue that when saving the configuration, the vBDF does not
display automatically in IVSHMEM region.
2. Chagne 'Region name' in IVSHMEM from optional to required.
3. Fix the wrong tooltip content for 'VM name'.

Tracked-On: #7673
Signed-off-by: Conghui <conghui.chen@intel.com>
2022-06-29 13:53:42 +08:00
Qiang Zhang e1df1ea820 misc: config_tool: allow cpu sharing among standard VMs
CPU sharing among standard Pre-launched VMs and Post-launched VMs are
allowed by design. Revert 4e2abfb473 ('misc: configurator: add check
for uniqueness of cpus in Pre-launched VM')

Tracked-On: #7688
Signed-off-by: Qiang Zhang <qiang4.zhang@intel.com>
2022-06-29 13:53:42 +08:00