X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=rculfhash.c;h=242a46702e1150c9d5c446c056c50daec243df41;hb=refs%2Fheads%2Fstable-0.8;hp=57f1a04d46dd3d446ca88fa74267660dd7a26fe2;hpb=a275740a277e83c6df7b35cf02f05ec9d4619849;p=userspace-rcu.git diff --git a/rculfhash.c b/rculfhash.c index 57f1a04..242a467 100644 --- a/rculfhash.c +++ b/rculfhash.c @@ -264,9 +264,10 @@ #include #include #include +#include #include "config.h" -#include +#include #include #include #include @@ -1386,7 +1387,7 @@ void fini_table(struct cds_lfht *ht, unsigned long len; len = 1UL << (i - 1); - dbg_printf("fini order %lu len: %lu\n", i, len); + dbg_printf("fini order %ld len: %lu\n", i, len); /* Stop shrink if the resize target changes under us */ if (CMM_LOAD_SHARED(ht->resize_target) > (1UL << (i - 1))) @@ -1805,6 +1806,9 @@ int cds_lfht_destroy(struct cds_lfht *ht, pthread_attr_t **attr) free_split_items_count(ht); if (attr) *attr = ht->resize_attr; + ret = pthread_mutex_destroy(&ht->resize_mutex); + if (ret) + ret = -EBUSY; poison_free(ht); end: return ret;