Commit Graph

7626 Commits

Author SHA1 Message Date
Junjie Mao
59c7077e2e config_tools: remove minOccurs from items that have default values
With the default population stage today, the `default` and `minOccurs=0`
attributes are typically mutually exclusive:

  * A config item with a `default` attribute is guaranteed to exist after
    populating default values, making the `minOccurs` attribute meaningless.

  * A config item with a `minOccurs=0` attribute allows that item not to be
    present even after default values are populated.

This patch removes the `minOccurs=0` attributes from some config items that have
their default values recently added. This allows the default value populator to
fill in those items as expected if a user does not provide them explicitly.

Tracked-On: #6690
Signed-off-by: Junjie Mao <junjie.mao@intel.com>
2022-06-23 14:50:49 +08:00
Geoffroy Van Cutsem
749c2297aa acrn_config: update text when loading the Configurator
Update the text that shows up when loading the ACRN Configurator.

Tracked-On: #6690
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Co-authored-by: David Kinder <david.b.kinder@intel.com>
2022-06-23 12:35:57 +08:00
Liu Long
2ecb8efefb ACRN:DM: Free virtio_vsock struct resource in deinit function
Free the virtio_vsock struct resource in virtio vsock deinit function
in case memory leak.

Tracked-On: #7759
Signed-off-by: Liu Long <long.liu@linux.intel.com>
2022-06-23 11:33:11 +08:00
Weiyi Feng
cc49e9ce4c config_tools: disable cpu_affinity realtime vcpu column checkbox
disable cpu_affinity realtime vcpu column checkbox

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-22 20:45:07 +08:00
Weiyi Feng
5b49af2435 config_tools: set CAT's standard vm RTCore to standard group
set CAT's standard vm RTCore to standard group

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-22 20:45:07 +08:00
Weiyi Feng
49d0d3ba19 config_tools: refine cat widget
refine cat widget

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-22 20:45:07 +08:00
Kunhui-Li
33e465efe5 config_tools: add default value for some elements
1. add default value for some elements.
2. update shared.xml for generic_board.

Tracked-On: #6690
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2022-06-22 19:54:46 +08:00
Chenli Wei
424674ecac misc: fix PCI vUART issue
The current code can't config PCI vUART by a unified HV Config and there
is a conflict between the HV vUART Config and PCI vUART Config.

This patch use PCI vUART Config to replace the HV vUART Config when the
vUART connection type is PCI and modify the launch scenario to make sure
the BDF is correct when user launch post launched VMs.

Tracked-On: #6690
Signed-off-by: Chenli Wei <chenli.wei@linux.intel.com>
2022-06-22 18:13:55 +08:00
Liu Long
fcfb551f02 ACRN:DM: Correct vhost_ext_features network bit
Use the VHOST_NET_F_VIRTIO_NET_HDR in linux system header file,
and set the correct feature bit for Virtio net header.

Tracked-On: #7790
Signed-off-by: Liu Long <long.liu@linux.intel.com>
2022-06-22 16:42:41 +08:00
Junjie Mao
ab420ba3a4 config-tools: fix assertions against scenario XML
This patch fixes the following issues in the existing scenario schema
assertions:

  1. The assertion that ensures the existence of pCPU affinity in all
     pre- and post-launched VMs does not count the pCPU settings under a
     VM properly.

  2. The assertion that ensures the presence of CAT settings of a defined
     VM is no longer needed as it was originally designed to capture
     configurator issues.

Tracked-On: #6690
Signed-off-by: Junjie Mao <junjie.mao@intel.com>
2022-06-22 13:38:24 +08:00
Chenli Wei
b6a7f8f658 misc: add assert to check the missing of CLOS MASK
The current UI there is an issue which have not sync and save the VMs
to RDT element, these issue will cause the missing of num_pclosids and
the HV can't start.

This patch add assert to check the the missing of CLOS MASK.
The UI issue will be fix by another patch.

Tracked-On: #6690
Signed-off-by: Chenli Wei <chenli.wei@linux.intel.com>
2022-06-21 16:01:45 +08:00
Chenli Wei
642b68d9c5 misc: set the communication vUART default type to PCI
The current code use the legacy as the default type of communication
vUART, these were only 4 standard vUART ports, others should config by
the /etc/serial.conf, so this patch change the default type to PCI
which could be used without config files.

Tracked-On: #6690
Signed-off-by: Chenli Wei <chenli.wei@linux.intel.com>
2022-06-21 14:50:34 +08:00
David B. Kinder
c6d171dfc0 config: update error message when no serial console and debug build type
DX improvement to configurator UI error message

Tracked-On: #5692

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2022-06-17 17:38:18 +08:00
Junjie Mao
adb047493c FIXME: packaging: generate a grub entry for shared scenario by default
The debian package created by misc/packaging today is supposed to add an
entry into grub.cfg for the installed hypervisor. Unfortunately, that is
done only when the given scenario XML is named shared, partitioned, hybrid
or hybrid_rt. In the rest of the cases, no entry is added while the default
boot option is still changed to ACRN_deb_multiboot2 which does not exist.

As a short-term workaround, this patch adjusts the branching structure of
the postinst script so that a grub entry is always generated. The entry for
shared scenario is chosen as the default if the scenario XML has a name
other than partitioned, hybrid or hybrid_rt.

This is a workaround only for release 3.0. In future releases we should
migrate to the dpkg-buildpackage using the scripts under debian/.

Tracked-On: #7778
Signed-off-by: Junjie Mao <junjie.mao@intel.com>
2022-06-17 16:44:45 +08:00
Weiyi Feng
9386fdfb0c config_tools: open scenario document in new window
open scenario document in new window

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-17 12:12:40 +08:00
Weiyi Feng
e6487e775b config_tools: hide severity from error message
hide severity from error message

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-17 12:12:40 +08:00
Weiyi Feng
044cf99422 config_tools: add document link for create scenario modal
add document link for create scenario modal

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-17 12:12:40 +08:00
David B. Kinder
4bfbab8d89 doc: update draft 3.0 published docs to include changes on master
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2022-06-16 21:09:41 -07:00
Weiyi Feng
4a7d6e4119 config_tools: hide syntactic error message from configurator ui
hide syntactic error message from configurator ui

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-16 17:56:34 +08:00
Weiyi Feng
8fe6161f0f config_tools: add error icon for hypervisor tab
add error icon for hypervisor tab

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-16 10:12:52 +08:00
Junjie Mao
7ba181877d config_tools: clean up RDT-related assertions
The following issues are witnessed in the RDT assertions in XML schema
rdt_support.xsd:

  * Some assertions still check data in vcpu_clos nodes which no longer
    exist today because of the refinement of how RDT is configured.

  * For those that still hold, acrn:severity and acrn:report-on are not
    stated, which prevents the validation activity from reporting failures
    against them.

This patch drops the assertions that no longer make sense today and add
ACRN-specific attributes to those that still hold.

Tracked-On: #6690
Signed-off-by: Junjie Mao <junjie.mao@intel.com>
2022-06-16 09:39:00 +08:00
Kunhui-Li
2165efe72f 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-15 21:51:19 +08:00
Weiyi Feng
94693f0dbf 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-15 21:05:53 +08:00
Weiyi Feng
62c48f5802 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-15 21:05:53 +08:00
Weiyi Feng
b22e3da6c6 config_tools: update configurator readme
update configurator readme

Tracked-On: #6691
Signed-off-by: Weiyi Feng <weiyix.feng@intel.com>
2022-06-15 21:05:53 +08:00
Ziheng Li
511f3003ac 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-14 22:41:57 +08:00
Kunhui-Li
e41323993b config_tools: remove VMX and VT-d invalid BIOS check in acrn-board-inspector
this patch removes VMX and VT-d invalid BIOS setting check in
acrn-board-inspector because the board inspector tool also adds
these checks (please refer to PR #7216) and may it's possible for user
to get the wrong information by these two check in acrn-board-inspector.

so we remove the repeated check in acrn-board-inspector.

Tracked-On: #6689
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
2022-06-14 18:56:44 +08:00
Fei Li
777b8f3639 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-14 18:09:01 +08:00
Fei Li
70f8b2077b 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-14 18:09:01 +08:00
Chenli Wei
6a3807748c misc: fix the secure coding style violations of tpm
There is an secure coding style violations of tmp, this patch add some
NULL check to fix these violations.

Tracked-On: #6690
Signed-off-by: Chenli Wei <chenli.wei@linux.intel.com>
2022-06-14 17:33:13 +08:00
Liu Long
31b9312f2f DM: vsock: fix the memory leakage bug
Fix the memory leakage issue caused by incomplete deinit flow.

Tracked-On: #7759
Signed-off-by: Liu Long <long.liu@linux.intel.com>
Acked-by: Wang, Yu1 <yu1.wang@intel.com>
2022-06-14 15:34:34 +08:00
Liu Long
7efb86afb1 DM: Add endpoint index value check in doorbell write
Check max ep index in doorbell write function to avoid overwriting
the pci_xhci_dev_emu->eps[XHCI_MAX_ENDPOINTS].

Tracked-On: #7759
Signed-off-by: Liu Long <long.liu@linux.intel.com>
Acked-by: Wang, Yu1 <yu1.wang@intel.com>
2022-06-14 15:34:34 +08:00
Sun Peng
5890b90fea dm: vdisplay: fix comment typos.
Fix some typos in output logs.

Tracked-On: #7747
Signed-off-by: Sun Peng <peng.p.sun@linux.intel.com>
Acked-by: Wang, Yu1 <yu1.wang@intel.com>
2022-06-14 14:13:12 +08:00
Kunhui-Li
5871751768 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-14 13:36:29 +08:00
Weiyi Feng
7da1d04960 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-14 11:11:15 +08:00
Weiyi Feng
35e4aed110 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-14 11:11:15 +08:00
Chenli Wei
3c47f285cc misc: fix the secure coding style violations
There was some secure coding style violations of virtio net and tmp,
this patch add some NULL check to fix these violations.

Tracked-On: #6690
Signed-off-by: Chenli Wei <chenli.wei@linux.intel.com>
2022-06-14 09:28:20 +08:00
Yifan Liu
52a9a84cac dm: Coding style fix: variable initialization
Initialize cid variable in virtio_vhost_vsock_init.

Tracked-On: #7593
Signed-off-by: Yifan Liu <yifan1.liu@intel.com>
2022-06-14 09:05:14 +08:00
Yifan Liu
6bbbddd974 dm: Coding style fix: Handle failure of parsing /proc/iomem
In get_mmio_hpa_resource, although very unlikely, parsing
of /proc/iomem may fail. Handle the case of failure and exit early.

Tracked-On: #7593
Signed-off-by: Yifan Liu <yifan1.liu@intel.com>
2022-06-14 09:05:14 +08:00
Chenli Wei
b5d3f93e56 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-13 21:29:08 +08:00
Kunhui-Li
8c47c324f5 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-13 20:56:27 +08:00
Junjie Mao
36cfc14e9c 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-13 20:12:04 +08:00
David B. Kinder
d71b552071 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-12 22:01:05 +08:00
Chenli Wei
2cd13026ed 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-11 19:53:13 +08:00
David B. Kinder
8234871d45 doc: update release_3.0 docs for draft publishing
For testing the daily configurator's references to published
documentation (for more details) we need a draft of the 3.0 docs
published.  Here are all the available updates from the master branch
applied to the release_3.0 branch. We'll update these again for the
final 3.0 doc release.

Tracked-On: #5692

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2022-06-10 11:44:57 -07:00
Weiyi Feng
1b342aa5e1 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-10 19:25:32 +08:00
Weiyi Feng
483a041b1c 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-10 19:25:32 +08:00
Junjie Mao
4d952ce007 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-10 18:40:54 +08:00
Junjie Mao
ac370119b6 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-10 18:40:54 +08:00
David B. Kinder
02954ca3f4 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-10 14:05:28 +08:00