Flexelint: Properly declare unlock semantics of fellow_cache_obj_free()

parent a2b43872
......@@ -1553,7 +1553,6 @@ fellow_cache_obj_free(const struct fellow_cache *fc,
AZ(fcs->fco_infdb);
AZ(fcs->fcs_onlru);
//lint --e{455} mutex unlocked
AZ(pthread_mutex_unlock(&fco->mtx));
AZ(pthread_mutex_destroy(&fco->mtx));
AZ(pthread_cond_destroy(&fco->cond));
......@@ -2753,8 +2752,6 @@ fellow_cache_read_complete(struct fellow_cache *fc, void *ptr, int32_t result)
assert_fcos_transition(fcs->state, fcos_next);
//lint --e{456} Two execution paths are being combined...
//lint --e{454} A thread mutex has been locked...
AZ(pthread_mutex_lock(&fco->mtx));
fellow_cache_seg_transition_locked(lcb, fcs, fcs->state, fcos_next);
// io holds a ref on the seg and the fco
......@@ -4692,7 +4689,6 @@ fellow_cache_obj_redundant(const struct fellow_cache *fc,
* and the other call side requires it
*/
//lint --e{454} locked but not unlocked
AZ(pthread_mutex_lock(&fco->mtx));
fellow_cache_obj_free(fc, &fco);
}
......@@ -4744,8 +4740,6 @@ fellow_cache_obj_deref(struct fellow_cache *fc, struct fellow_cache_obj *fco)
fellow_cache_lru_chgbatch_apply(lcb);
DBG("fco %p refcount %u", fco, refcount);
//lint --e{456} Two execution paths are being combined...
//lint --e{454} A thread mutex has been locked...
if (refcount == 0)
fellow_cache_obj_free(fc, &fco);
else
......@@ -5014,9 +5008,6 @@ fellow_cache_obj_delete(struct fellow_cache *fc,
logstate = fco->logstate;
//lint --e{456} Two execution paths are being combined...
//lint --e{454} A thread mutex has been locked...
// must have been the last reference
AZ(fellow_cache_obj_deref_locked(lcb, fc, fco));
fellow_cache_lru_chgbatch_apply(lcb);
......
......@@ -5,6 +5,7 @@
-function(pthread_create(3), WRK_BgThread(3) )
-sem(Lck_Lock, thread_lock)
-sem(Lck_Unlock, thread_unlock)
-sem(fellow_cache_obj_free, thread_unlock)
-sem(sfemem_objfree, thread)
-sem(sfemem_iterator, thread)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment