projects
/
deliverable
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: remove inode from inode registry ht
[deliverable/lttng-tools.git]
/
src
/
common
/
fd-tracker
/
inode.c
diff --git
a/src/common/fd-tracker/inode.c
b/src/common/fd-tracker/inode.c
index e0d8bbfcc8605796d36ee6634cfd8551b8067a34..f02f0a812d67d516df48c7702b72f42f1be35ddb 100644
(file)
--- a/
src/common/fd-tracker/inode.c
+++ b/
src/common/fd-tracker/inode.c
@@
-103,6
+103,9
@@
void lttng_inode_destroy(struct lttng_inode *inode)
PERROR("Failed to unlink %s", inode->path);
}
}
PERROR("Failed to unlink %s", inode->path);
}
}
+ rcu_read_lock();
+ cds_lfht_del(inode->registry_ht, &inode->registry_node);
+ rcu_read_unlock();
call_rcu(&inode->rcu_head, lttng_inode_delete);
}
call_rcu(&inode->rcu_head, lttng_inode_delete);
}
@@
-249,6
+252,7
@@
struct lttng_inode *lttng_inode_create(const struct inode_id *id,
cds_lfht_node_init(&inode->registry_node);
inode->id = *id;
inode->path = strdup(path);
cds_lfht_node_init(&inode->registry_node);
inode->id = *id;
inode->path = strdup(path);
+ inode->registry_ht = ht;
if (!inode->path) {
goto error;
}
if (!inode->path) {
goto error;
}
This page took
0.024954 seconds
and
5
git commands to generate.