]> git.proxmox.com Git - pve-manager.git/commit
gui: vm: add CPU flag selector with tri-state awareness
authorThomas Lamprecht <t.lamprecht@proxmox.com>
Thu, 6 Jun 2019 20:22:19 +0000 (22:22 +0200)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Fri, 7 Jun 2019 15:45:33 +0000 (17:45 +0200)
commit06064872c226981c5fe15d11b94203fe719c0554
tree7e1b57d10cf004a9ad06db1a1e62edd2ca60a67c
parentcc708c9cfe8ce9888745ee205071e7e96decb096
gui: vm: add CPU flag selector with tri-state awareness

This allows to select the tri-state (enforce on, enforce off, default
from QEMU+CPU Model) for each CPU flag independently.

For this a grid with a widgetcolumn is used hosting tree radio
buttons for each state. They're marked '+' for enforce on, '-' for
enforce off and the default has no label, as it isn't easy to add in
such a way that it does not confuses people and does not looks
completely ugly.. But, to help people which have a hard time figuring
out what the states mean, a fake column was added showing the current
selected state's outcome in words.

For show casing the new nice interface add all currently supported
flags from out API-
It could be worth to add some selected CPU model awareness, so that
flags are only enabled if they can make sense with the selected
model. But one should be able to add this relative easily with this
as base.

The hardcoded flag lists is not ideal, we should try to generate this
in the future, but here already qemu-server is lacking and this is
rather independent of the fact and can be done later one just fine
too.

Note that this /is/ an *advanced* feature so not visible for all
directly, while I try to document in short what a flag does it surely
isn't perfect and to short to explain all nuances, they should give
enough pointers to know if it's relevant at all (amd / intel cpu) and
for what one should research

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
(cherry picked from commit 92572ead6dc4e2a4475111a4c4d52be8f849d9a2)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
www/manager6/Makefile
www/manager6/form/VMCPUFlagSelector.js [new file with mode: 0644]
www/manager6/qemu/ProcessorEdit.js