* [pbs-devel] [PATCH proxmox-backup 1/2] api2/tape/drive: add missing locks for some drive actions
@ 2021-02-08 10:10 Dominik Csapak
2021-02-08 10:10 ` [pbs-devel] [PATCH proxmox-backup 2/2] ui: tape/window/LabelMedia: change to POST Dominik Csapak
2021-02-09 7:46 ` [pbs-devel] applied: [PATCH proxmox-backup 1/2] api2/tape/drive: add missing locks for some drive actions Dietmar Maurer
0 siblings, 2 replies; 3+ messages in thread
From: Dominik Csapak @ 2021-02-08 10:10 UTC (permalink / raw)
To: pbs-devel
else a backup/restore can easily be disrupted
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
---
src/api2/tape/drive.rs | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/src/api2/tape/drive.rs b/src/api2/tape/drive.rs
index 29321601..76f15df5 100644
--- a/src/api2/tape/drive.rs
+++ b/src/api2/tape/drive.rs
@@ -84,8 +84,11 @@ use crate::{
pub async fn load_media(drive: String, label_text: String) -> Result<(), Error> {
let (config, _digest) = config::drive::config()?;
+ let lock_guard = lock_tape_device(&config, &drive)?;
tokio::task::spawn_blocking(move || {
+ let _lock_guard = lock_guard; // keep lock guard
+
let (mut changer, _) = required_media_changer(&config, &drive)?;
changer.load_media(&label_text)
}).await?
@@ -110,8 +113,11 @@ pub async fn load_media(drive: String, label_text: String) -> Result<(), Error>
pub async fn load_slot(drive: String, source_slot: u64) -> Result<(), Error> {
let (config, _digest) = config::drive::config()?;
+ let lock_guard = lock_tape_device(&config, &drive)?;
tokio::task::spawn_blocking(move || {
+ let _lock_guard = lock_guard; // keep lock guard
+
let (mut changer, _) = required_media_changer(&config, &drive)?;
changer.load_media_from_slot(source_slot)
}).await?
@@ -138,8 +144,11 @@ pub async fn load_slot(drive: String, source_slot: u64) -> Result<(), Error> {
pub async fn export_media(drive: String, label_text: String) -> Result<u64, Error> {
let (config, _digest) = config::drive::config()?;
+ let lock_guard = lock_tape_device(&config, &drive)?;
tokio::task::spawn_blocking(move || {
+ let _lock_guard = lock_guard; // keep lock guard
+
let (mut changer, changer_name) = required_media_changer(&config, &drive)?;
match changer.export_media(&label_text)? {
Some(slot) => Ok(slot),
@@ -170,8 +179,11 @@ pub async fn unload(
) -> Result<(), Error> {
let (config, _digest) = config::drive::config()?;
+ let lock_guard = lock_tape_device(&config, &drive)?;
tokio::task::spawn_blocking(move || {
+ let _lock_guard = lock_guard; // keep lock guard
+
let (mut changer, _) = required_media_changer(&config, &drive)?;
changer.unload_media(target_slot)
}).await?
--
2.20.1
^ permalink raw reply [flat|nested] 3+ messages in thread
* [pbs-devel] [PATCH proxmox-backup 2/2] ui: tape/window/LabelMedia: change to POST
2021-02-08 10:10 [pbs-devel] [PATCH proxmox-backup 1/2] api2/tape/drive: add missing locks for some drive actions Dominik Csapak
@ 2021-02-08 10:10 ` Dominik Csapak
2021-02-09 7:46 ` [pbs-devel] applied: [PATCH proxmox-backup 1/2] api2/tape/drive: add missing locks for some drive actions Dietmar Maurer
1 sibling, 0 replies; 3+ messages in thread
From: Dominik Csapak @ 2021-02-08 10:10 UTC (permalink / raw)
To: pbs-devel
this changed in the backend
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
---
www/tape/window/LabelMedia.js | 2 ++
1 file changed, 2 insertions(+)
diff --git a/www/tape/window/LabelMedia.js b/www/tape/window/LabelMedia.js
index ec7fca5d..563f59f0 100644
--- a/www/tape/window/LabelMedia.js
+++ b/www/tape/window/LabelMedia.js
@@ -8,6 +8,8 @@ Ext.define('PBS.TapeManagement.LabelMediaWindow', {
title: gettext('Label Media'),
submitText: gettext('OK'),
+ method: 'POST',
+
showProgress: true,
items: [
--
2.20.1
^ permalink raw reply [flat|nested] 3+ messages in thread
* [pbs-devel] applied: [PATCH proxmox-backup 1/2] api2/tape/drive: add missing locks for some drive actions
2021-02-08 10:10 [pbs-devel] [PATCH proxmox-backup 1/2] api2/tape/drive: add missing locks for some drive actions Dominik Csapak
2021-02-08 10:10 ` [pbs-devel] [PATCH proxmox-backup 2/2] ui: tape/window/LabelMedia: change to POST Dominik Csapak
@ 2021-02-09 7:46 ` Dietmar Maurer
1 sibling, 0 replies; 3+ messages in thread
From: Dietmar Maurer @ 2021-02-09 7:46 UTC (permalink / raw)
To: Proxmox Backup Server development discussion, Dominik Csapak
applied both patches
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2021-02-09 7:47 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-08 10:10 [pbs-devel] [PATCH proxmox-backup 1/2] api2/tape/drive: add missing locks for some drive actions Dominik Csapak
2021-02-08 10:10 ` [pbs-devel] [PATCH proxmox-backup 2/2] ui: tape/window/LabelMedia: change to POST Dominik Csapak
2021-02-09 7:46 ` [pbs-devel] applied: [PATCH proxmox-backup 1/2] api2/tape/drive: add missing locks for some drive actions Dietmar Maurer
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal