[pve-devel] applied: [PATCH v5 manager 0/2] add edit window for device passthrough

Thomas Lamprecht t.lamprecht at proxmox.com
Wed Apr 17 11:54:15 CEST 2024


Am 17/04/2024 um 10:44 schrieb Filip Schauer:
> Changes since v4:
> * Simplify cbind
> * Fix selection of custom devid not being applied on creation in
>   onGetValues
> 
> Changes since v3:
> * Pass confid in via cbind instead of manually setting it in the view
>   model
> * Check me.isCreate instead of !me.confid for whether to find the next
>   free device slot
> 
> Changes since v2:
> * Clarify naming of mount point and device passthrough related utils
> * Remove unnecessary cbind
> * Make the device index selectible
> * Add default values as emptyText to the UI elements
> * Reorder UI elements to improve the layout
> * Disable the Device Passthrough menu entries for non-root users
> * Change var to let
> * Minor code cleanup of DeviceEdit.js
> 
> Changes since v1:
> * Remove usb mapping
> * Add mode, uid and gid fields
> 
> Filip Schauer (2):
>   utils: clarify naming of LXC mount point utils
>   ui: lxc: add edit window for device passthrough
> 
>  www/manager6/Makefile                    |   1 +
>  www/manager6/Utils.js                    |  23 ++-
>  www/manager6/lxc/DeviceEdit.js           | 176 +++++++++++++++++++++++
>  www/manager6/lxc/MPEdit.js               |   4 +-
>  www/manager6/lxc/MultiMPEdit.js          |   4 +-
>  www/manager6/lxc/Resources.js            |  33 ++++-
>  www/manager6/window/GuestDiskReassign.js |   6 +-
>  7 files changed, 232 insertions(+), 15 deletions(-)
>  create mode 100644 www/manager6/lxc/DeviceEdit.js
> 


applied, with a follow-up that made the forEachLxc{MP,Dev} methods also
pass the property ID directly to the closure, thanks!

I also made some clean-ups, e.g. dropping the right-alignment of the field
label, that look just way to odd..
Allowing manual control over the ID also seems to not provide much advantage
here, so I hid that field like we do for VM PCI passthrough.

Also noticed something not related to the UI side: if I enter some bogus path,
like `/dev/enoent`, I correctly get an error that this does not exist, but the
config entry is added nonetheless!
Which then also means that if I keep the dialogue open and correct the dev
path, I won't be able to submit as the config digest changed, I need to close
and re-open the add/edit dialogue again. This is not only bad UX, but seems
completely broken?

Also, if I got some bogus devX entries already, the error I get when saving
a new one is often from them, not from the one I add, but the change also
goes through here...

Please check that out.




More information about the pve-devel mailing list