From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id B881975C50 for ; Fri, 15 Oct 2021 10:33:00 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id A80F626746 for ; Fri, 15 Oct 2021 10:33:00 +0200 (CEST) Received: from proxmox-new.maurer-it.com (proxmox-new.maurer-it.com [94.136.29.106]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by firstgate.proxmox.com (Proxmox) with ESMTPS id F2CC326738 for ; Fri, 15 Oct 2021 10:32:59 +0200 (CEST) Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1]) by proxmox-new.maurer-it.com (Proxmox) with ESMTP id CA3BC4663C for ; Fri, 15 Oct 2021 10:32:59 +0200 (CEST) From: Dominik Csapak To: pbs-devel@lists.proxmox.com Date: Fri, 15 Oct 2021 10:32:58 +0200 Message-Id: <20211015083259.1719868-1-d.csapak@proxmox.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 0 AWL 0.294 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% 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 URIBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [mod.rs] Subject: [pbs-devel] [PATCH proxmox-backup 1/2] tape: simplify export_media_set for pool writer X-BeenThere: pbs-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox Backup Server development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Oct 2021 08:33:00 -0000 our export code can handle if the tape is inside the drive, so unloading it first does not have an benefit, it even makes the exporting slower, since we first unload it into its original slot, and then moving it to an import/export slot so drop the code that unloads the tape from the drive, and let the export code itself handle that Signed-off-by: Dominik Csapak --- tested on my virtual tape library, but would be grateful if someone else tests this again on real hardware src/tape/pool_writer/mod.rs | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/src/tape/pool_writer/mod.rs b/src/tape/pool_writer/mod.rs index cc069ff5..9ff4a173 100644 --- a/src/tape/pool_writer/mod.rs +++ b/src/tape/pool_writer/mod.rs @@ -150,21 +150,9 @@ impl PoolWriter { /// Export current media set and drop PoolWriterState (close drive) pub fn export_media_set(&mut self, worker: &WorkerTask) -> Result<(), Error> { - let mut status = self.status.take(); - let (drive_config, _digest) = pbs_config::drive::config()?; if let Some((mut changer, _)) = media_changer(&drive_config, &self.drive_name)? { - - if let Some(ref mut status) = status { - task_log!(worker, "eject media"); - status.drive.eject_media()?; // rewind and eject early, so that unload_media is faster - } - drop(status); // close drive - - task_log!(worker, "unload media"); - changer.unload_media(None)?; - for media_uuid in self.pool.current_media_list()? { let media = self.pool.lookup_media(media_uuid)?; let label_text = media.label_text(); @@ -175,7 +163,7 @@ impl PoolWriter { } } - } else if let Some(mut status) = status { + } else if let Some(mut status) = self.status.take() { task_log!(worker, "standalone drive - ejecting media instead of export"); status.drive.eject_media()?; } -- 2.30.2