From f1b4d979455ef683c8cd6933fac4b2746ec2e04a Mon Sep 17 00:00:00 2001 From: Michael Eischer Date: Thu, 26 Mar 2020 21:52:37 +0100 Subject: [PATCH] doc: Warn about compatibility issues with CIFS and restic On Linux CIFS (SMB) seems to be incompatible with the async preemption implementation of Go 1.14. CIFS seems not to restart syscalls (open, read, chmod, readdir, ...) as expected by Go, which sets SA_RESTART for its signal handler to have syscalls restarted automatically. This leads to Go passing up lots of EINTR return codes to restic. See https://github.com/restic/restic/issues/2659 for a detailed explanation. --- doc/030_preparing_a_new_repo.rst | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/doc/030_preparing_a_new_repo.rst b/doc/030_preparing_a_new_repo.rst index 50f41fd9a..ae5624122 100644 --- a/doc/030_preparing_a_new_repo.rst +++ b/doc/030_preparing_a_new_repo.rst @@ -54,6 +54,13 @@ command and enter the same password twice: Remembering your password is important! If you lose it, you won't be able to access data stored in the repository. +.. warning:: + + On Linux, storing the backup repository on a CIFS (SMB) share is not + recommended due to compatibility issues. Either use another backend + or set the environment variable `GODEBUG` to `asyncpreemptoff=1`. + Refer to GitHub issue #2659 for further explanations. + SFTP ****