From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id 4D8A61FF164 for ; Wed, 23 Oct 2024 14:37:23 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 6F7F51DFEC; Wed, 23 Oct 2024 14:38:02 +0200 (CEST) From: Daniel Kral To: pve-devel@lists.proxmox.com Date: Wed, 23 Oct 2024 14:37:16 +0200 Message-Id: <20241023123722.124478-1-d.kral@proxmox.com> X-Mailer: git-send-email 2.39.5 MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.000 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment RCVD_IN_VALIDITY_CERTIFIED_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_RPBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_SAFE_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pve-devel] [PATCH manager v3 0/6] fix #5430: ocfs2 io_uring read write X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox VE development discussion Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" Since around Linux kernel version 6.7 [0], and as reported by users kernel version `6.8.4-2-pve`, a bug was introduced by a refactoring of the io_read function in the io_uring subsystem. This causes any VM to fail to start, when io_uring is used for CDROM drives (including CloudInit drives) and VM disks (even though I could not reproduce the latter). The patch series contains the following changes: 1. refactor code for the upcoming changes (#1-#3), 2. allow changes to aio/cache options for CDROMs in the GUI (#4), 3. allow changes to aio/cache options for CloudInit in the GUI (#5-6). The last two UI changes are an optional part that was discussed off-list as a solution before I knew about the kernel patch and I would still propose it as a useful set of changes. These changes allow users to change the cache and async I/O options for both CDROM and CloudInit drives. These changes are not necessary for the whole patch series and can be applied separately, or dropped. discussion === Since the kernel patch has already been applied to pve-kernel, the UI changes might not be needed anymore, but could very well be an additional solution (for this or other use cases). Another discussion to this patch series - as Shannon and Fabian have mentioned to me off-list - was if there are actual benefits for CDROM and CloudInit drives to be read with io_uring enabled. If not, we could remove the io_uring default from CDROMs and CloudInit drives in config_to_command in qemu-server. history === Differences to v1 (thanks to @Lukas for the style review): - Remove the applied pve-kernel patch from the series - Move refactoring in pve-manager to their own separate patches - Use let instead of var (also in existing code for consistency, as no variable was dependent on its scope) - Rename variables whose names were too unclear - Change "widget.AsyncIOTypeSelector" to "widget.pveAsyncIoTypeSelector" - Include a reason why the CDEdit modal width has been changed in the commit's message - Adapt cover letter to refer only to the UI changes Differences to v2: - Fix references to AsyncIOTypeSelector, which could not be found at runtime and would make edit modals unavailable for CD/HDD/CI drives Daniel Kral (6): ui: vm: change var to let in CDROM and CloudInit edit modals ui: vm: improve code readability of CDROM and CloudInit edit modals ui: vm: factor out async I/O type selector fix #5430: ui: vm: allow editing cdrom aio and cache options ui: vm: make cloudinit drive editable fix #5430: ui: vm: allow editing cloudinit aio and cache options www/manager6/Makefile | 1 + www/manager6/form/AsyncIOTypeSelector.js | 10 ++ www/manager6/qemu/CDEdit.js | 76 +++++++++---- www/manager6/qemu/CIDriveEdit.js | 131 +++++++++++++++++------ www/manager6/qemu/HDEdit.js | 10 +- www/manager6/qemu/HardwareView.js | 4 +- 6 files changed, 169 insertions(+), 63 deletions(-) create mode 100644 www/manager6/form/AsyncIOTypeSelector.js -- 2.39.5 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel