#include "inode.hpp"
+namespace {
struct inode_id {
dev_t device;
ino_t inode;
};
+} /* namespace */
struct lttng_inode_registry {
/* Hashtable of inode_id to lttng_inode. */
unsigned int next_id;
};
-static struct {
+namespace {
+struct {
pthread_mutex_t lock;
bool initialized;
unsigned long value;
.initialized = false,
.value = 0,
};
+} /* namespace */
static unsigned long lttng_inode_id_hash(const struct inode_id *id)
{
static int lttng_inode_match(struct cds_lfht_node *node, const void *key)
{
const struct inode_id *id = (inode_id *) key;
- const struct lttng_inode *inode = caa_container_of(
- node, struct lttng_inode, registry_node);
+ const struct lttng_inode *inode = lttng::utils::container_of(
+ node, <tng_inode::registry_node);
return inode->id.device == id->device && inode->id.inode == id->inode;
}
static void lttng_inode_free(struct rcu_head *head)
{
struct lttng_inode *inode =
- caa_container_of(head, struct lttng_inode, rcu_head);
+ lttng::utils::container_of(head, <tng_inode::rcu_head);
free(inode);
}
static void lttng_inode_release(struct urcu_ref *ref)
{
- lttng_inode_destroy(caa_container_of(ref, struct lttng_inode, ref));
+ lttng_inode_destroy(lttng::utils::container_of(ref, <tng_inode::ref));
}
static void lttng_inode_get(struct lttng_inode *inode)
struct lttng_unlinked_file_pool *lttng_unlinked_file_pool_create(
const char *path)
{
- struct lttng_unlinked_file_pool *pool = (lttng_unlinked_file_pool *) zmalloc(sizeof(*pool));
+ struct lttng_unlinked_file_pool *pool = zmalloc<lttng_unlinked_file_pool>();
if (!pool) {
goto error;
reference_acquired = lttng_directory_handle_get(directory_handle);
LTTNG_ASSERT(reference_acquired);
- inode = (lttng_inode *) zmalloc(sizeof(*inode));
+ inode = zmalloc<lttng_inode>();
if (!inode) {
goto end;
}
struct lttng_inode_registry *lttng_inode_registry_create(void)
{
- struct lttng_inode_registry *registry = (lttng_inode_registry *) zmalloc(sizeof(*registry));
+ struct lttng_inode_registry *registry = zmalloc<lttng_inode_registry>();
if (!registry) {
goto end;
lttng_inode_match, &id, &iter);
node = cds_lfht_iter_get_node(&iter);
if (node) {
- inode = caa_container_of(
- node, struct lttng_inode, registry_node);
+ inode = lttng::utils::container_of(
+ node, <tng_inode::registry_node);
lttng_inode_get(inode);
goto end_unlock;
}