diff options
author | ed <ed@FreeBSD.org> | 2014-09-01 19:56:28 +0000 |
---|---|---|
committer | ed <ed@FreeBSD.org> | 2014-09-01 19:56:28 +0000 |
commit | 1812cd5a9f2e85cbf444f2b04bd4bc302bdb7b66 (patch) | |
tree | de3eb0bed7c1066de2043e1d1623d8329c20b6b0 /lib/libcuse | |
parent | 88a0db453e8625821967df184a2977ee0a52f3e8 (diff) | |
download | FreeBSD-src-1812cd5a9f2e85cbf444f2b04bd4bc302bdb7b66.zip FreeBSD-src-1812cd5a9f2e85cbf444f2b04bd4bc302bdb7b66.tar.gz |
Add lock annotations to libcuse.
- Add annotations to the lock/unlock function to indicate that the
function is allowed to lock and unlock the underlying pthread mutex.
- Add __guarded_by() annotations to the global variables.
Approved by: hselasky@
Diffstat (limited to 'lib/libcuse')
-rw-r--r-- | lib/libcuse/cuse_lib.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/lib/libcuse/cuse_lib.c b/lib/libcuse/cuse_lib.c index 9d8352f..707e69d 100644 --- a/lib/libcuse/cuse_lib.c +++ b/lib/libcuse/cuse_lib.c @@ -79,20 +79,22 @@ struct cuse_dev { void *priv1; }; -static TAILQ_HEAD(, cuse_dev) h_cuse; -static TAILQ_HEAD(, cuse_dev_entered) h_cuse_entered; static int f_cuse = -1; + static pthread_mutex_t m_cuse; -static struct cuse_vm_allocation a_cuse[CUSE_ALLOC_UNIT_MAX]; +static TAILQ_HEAD(, cuse_dev) h_cuse __guarded_by(m_cuse); +static TAILQ_HEAD(, cuse_dev_entered) h_cuse_entered __guarded_by(m_cuse); +static struct cuse_vm_allocation a_cuse[CUSE_ALLOC_UNIT_MAX] + __guarded_by(m_cuse); static void -cuse_lock(void) +cuse_lock(void) __locks_exclusive(m_cuse) { pthread_mutex_lock(&m_cuse); } static void -cuse_unlock(void) +cuse_unlock(void) __unlocks(m_cuse) { pthread_mutex_unlock(&m_cuse); } |