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 DABE81FF2CA for ; Tue, 23 Jul 2024 11:58:15 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id D9D033FFD6; Tue, 23 Jul 2024 11:57:50 +0200 (CEST) From: Fiona Ebner To: pve-devel@lists.proxmox.com Date: Tue, 23 Jul 2024 11:56:08 +0200 Message-Id: <20240723095624.53621-8-f.ebner@proxmox.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20240723095624.53621-1-f.ebner@proxmox.com> References: <20240723095624.53621-1-f.ebner@proxmox.com> MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL -0.061 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 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] [RFC qemu 07/23] PVE backup: get device info: allow caller to specify filter for which devices use fleecing 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" For providing snapshot-access to external backup providers, EFI and TPM also need an associated fleecing image. The new caller will thus need a different filter. Signed-off-by: Fiona Ebner --- pve-backup.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pve-backup.c b/pve-backup.c index e8031bb89c..d0593fc581 100644 --- a/pve-backup.c +++ b/pve-backup.c @@ -717,7 +717,7 @@ static void create_backup_jobs_bh(void *opaque) { /* * EFI disk and TPM state are small and it's just not worth setting up fleecing for them. */ -static bool device_uses_fleecing(const char *device_id) +static bool fleecing_no_efi_tpm(const char *device_id) { return strncmp(device_id, "drive-efidisk", 13) && strncmp(device_id, "drive-tpmstate", 14); } @@ -729,7 +729,7 @@ static bool device_uses_fleecing(const char *device_id) */ static GList coroutine_fn GRAPH_RDLOCK *get_device_info( const char *devlist, - bool fleecing, + bool (*device_uses_fleecing)(const char*), Error **errp) { gchar **devs = NULL; @@ -755,7 +755,7 @@ static GList coroutine_fn GRAPH_RDLOCK *get_device_info( di->bs = bs; di->device_name = g_strdup(bdrv_get_device_name(bs)); - if (fleecing && device_uses_fleecing(*d)) { + if (device_uses_fleecing && device_uses_fleecing(*d)) { g_autofree gchar *fleecing_devid = g_strconcat(*d, "-fleecing", NULL); BlockBackend *fleecing_blk = blk_by_name(fleecing_devid); if (!fleecing_blk) { @@ -858,7 +858,8 @@ UuidInfo coroutine_fn *qmp_backup( format = has_format ? format : BACKUP_FORMAT_VMA; bdrv_graph_co_rdlock(); - di_list = get_device_info(devlist, has_fleecing && fleecing, &local_err); + di_list = get_device_info(devlist, (has_fleecing && fleecing) ? fleecing_no_efi_tpm : NULL, + &local_err); bdrv_graph_co_rdunlock(); if (local_err) { error_propagate(errp, local_err); -- 2.39.2 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel