res_pjsip_registrar: lock transport monitor when setting 'removing' flag
authorKevin Harwell <kharwell@digium.com>
Thu, 7 Feb 2019 15:23:37 +0000 (09:23 -0600)
committerKevin Harwell <kharwell@digium.com>
Thu, 7 Feb 2019 20:28:41 +0000 (14:28 -0600)
commit61a8f79a2900f654eacf9ee5fbcaa55954ac4d8d
tree5bf5d5da11918b48dca1b05b0d6b68875bc14057
parent68bb6ef6cb62c2af8b7192d205d1ff6b44fefd9d
res_pjsip_registrar: lock transport monitor when setting 'removing' flag

A previous patch attempt to mitigate blocked threads on transport shutdown for
a given contact. It was thought that a second lock could be avoided by checking
the 'removing' flag on the transport monitor twice (once before and once after
the normal named aor locking). However as with usual threading issues if the
timing was right the original problem still occured.

This patch adds locking around the first 'removing' flag check and set, thus
nullifying the secondary check, so it was removed.

ASTERISK-28213

Change-Id: Iaa8e36e5311789549b76d8de42dfcea96013b2ed
res/res_pjsip_registrar.c