[pbs-devel] [PATCH proxmox-backup 1/2] tape: simplify export_media_set for pool writer
Dietmar Maurer
dietmar at proxmox.com
Mon Oct 18 10:38:40 CEST 2021
> so drop the code that unloads the tape from the drive, and let the
> export code itself handle that
But you drop much more functionality??
>
> Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
> ---
> 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
> - }
What about this rewind?
> - drop(status); // close drive
and this drop()?
> -
> - 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
>
>
>
> _______________________________________________
> pbs-devel mailing list
> pbs-devel at lists.proxmox.com
> https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel
More information about the pbs-devel
mailing list