[pbs-devel] superseded: [PATCH proxmox-backup 0/3] rework GC-related locks

Fabian Grünbichler f.gruenbichler at proxmox.com
Thu Oct 2 09:29:43 CEST 2025


https://lore.proxmox.com/pbs-devel/20251002072843.88042-1-f.gruenbichler@proxmox.com/T/#t

On October 1, 2025 1:19 pm, Fabian Grünbichler wrote:
> this series reworks some of the locking behaviour surrounding GC.
> 
> the first patch removes a potentially problematic combination of
> std::sync::Mutex and async S3 code (this should be the last such code
> path), by storing the ProcessLocker guard inside the mutex while holding
> it just for storing/querying/dropping that guard, instead of for the
> duration of GC.
> 
> the second and third patches get rid of racy interactions between
> pre-reload backup sessions and post-reload GC tasks. while this race
> doesn't lead to data loss, it breaks the expected priority of such
> tasks.
> 
> Fabian Grünbichler (3):
>   GC: rework locking logic
>   backup env: keep a shared chunk store lock for duration of backup
>   index writers: remove chunk store lock
> 
>  pbs-datastore/src/datastore.rs     | 544 +++++++++++++++--------------
>  pbs-datastore/src/dynamic_index.rs |   6 +-
>  pbs-datastore/src/fixed_index.rs   |   6 +-
>  src/api2/backup/environment.rs     |   5 +
>  src/api2/backup/mod.rs             |   4 +-
>  5 files changed, 295 insertions(+), 270 deletions(-)
> 
> -- 
> 2.47.3
> 
> 
> 
> _______________________________________________
> 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