Author: kib
Date: Mon Sep 30 07:42:07 2019
New Revision: 352892
URL: https://svnweb.freebsd.org/changeset/base/352892

Log:
  MFC r352620:
  Fix destruction of the robust mutexes.

Modified:
  stable/12/lib/libthr/thread/thr_mutex.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/lib/libthr/thread/thr_mutex.c
==============================================================================
--- stable/12/lib/libthr/thread/thr_mutex.c     Mon Sep 30 07:27:07 2019        
(r352891)
+++ stable/12/lib/libthr/thread/thr_mutex.c     Mon Sep 30 07:42:07 2019        
(r352892)
@@ -474,7 +474,11 @@ _thr_mutex_destroy(pthread_mutex_t *mutex)
                if (m == THR_PSHARED_PTR) {
                        m1 = __thr_pshared_offpage(mutex, 0);
                        if (m1 != NULL) {
-                               mutex_assert_not_owned(_get_curthread(), m1);
+                               if ((uint32_t)m1->m_lock.m_owner !=
+                                   UMUTEX_RB_OWNERDEAD) {
+                                       mutex_assert_not_owned(
+                                           _get_curthread(), m1);
+                               }
                                __thr_pshared_destroy(mutex);
                        }
                        *mutex = THR_MUTEX_DESTROYED;
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to