X-Git-Url: https://git.octo.it/?a=blobdiff_plain;ds=sidebyside;f=src%2Fdaemon%2Fmeta_data.c;h=29236e2f18563760279d9f3868b2a748e1e1a8a4;hb=3d7453f6c3a13dc49e9ed6dd6d7a19202a3b087e;hp=e1d0ec5b71f17a9a284b1a37745416accece939a;hpb=e2b289ea039269b60edd459d2d514d3f82820e3a;p=collectd.git diff --git a/src/daemon/meta_data.c b/src/daemon/meta_data.c index e1d0ec5b..29236e2f 100644 --- a/src/daemon/meta_data.c +++ b/src/daemon/meta_data.c @@ -214,6 +214,17 @@ static meta_entry_t *md_entry_lookup (meta_data_t *md, /* {{{ */ } /* }}} meta_entry_t *md_entry_lookup */ /* + * Each value_list_t*, as it is going through the system, is handled by exactly + * one thread. Plugins which pass a value_list_t* to another thread, e.g. the + * rrdtool plugin, must create a copy first. The meta data within a + * value_list_t* is not thread safe and doesn't need to be. + * + * The meta data associated with cache entries are a different story. There, we + * need to ensure exclusive locking to prevent leaks and other funky business. + * This is ensured by the uc_meta_data_get_*() functions. + */ + +/* * Public functions */ meta_data_t *meta_data_create (void) /* {{{ */