]> git.ipfire.org Git - thirdparty/bacula.git/commit
use pthread_kill() instead of pthread_cancel() to terminate SD_msg_chan
authorAlain Spineux <alain@baculasystems.com>
Tue, 5 Dec 2017 09:53:51 +0000 (10:53 +0100)
committerKern Sibbald <kern@sibbald.com>
Sat, 14 Jul 2018 09:48:22 +0000 (11:48 +0200)
commit3b11b947da7960dc1c48fdf7e420c4e481dbe5cf
tree4f7e263ad31351cf73493eb7f7ff3e8bf9a8794b
parente1109e14730c9578ef25c9fae1b724f0b70a03a9
use pthread_kill() instead of pthread_cancel() to terminate SD_msg_chan

- fix a dead lock after a protocol error
- bdir_get_msg() use locks, SQL, FILE*.
  This is not compatible with pthread_cancel()
  while (!job_canceled(jcr) && (n=bget_dirmsg(sd)) >= 0)
  The msg_thread uses bdir_get_msg()  to dispatch Jmsg,
  and do catalog information

- moved the code in new terminate_sd_msg_chan_thread(JCR)
bacula/src/dird/backup.c
bacula/src/dird/mac.c
bacula/src/dird/msgchan.c
bacula/src/dird/protos.h
bacula/src/dird/restore.c
bacula/src/dird/vbackup.c