Lines Matching refs:nodeid
138 fuse_ino_t nodeid;
183 fuse_ino_t nodeid;
521 static struct node *get_node_nocheck(struct fuse *f, fuse_ino_t nodeid)
523 size_t hash = id_hash(f, nodeid);
527 if (node->nodeid == nodeid)
533 static struct node *get_node(struct fuse *f, fuse_ino_t nodeid)
535 struct node *node = get_node_nocheck(f, nodeid);
538 (unsigned long long) nodeid);
615 struct node **nodep = &f->id_table.array[id_hash(f, node->nodeid)];
659 size_t newhash = id_hash(f, node->nodeid);
676 size_t hash = id_hash(f, node->nodeid);
733 size_t hash = name_hash(f, node->parent->nodeid, node->name);
753 (unsigned long long) node->nodeid);
772 size_t newhash = name_hash(f, node->parent->nodeid, node->name);
817 (unsigned long long) node->nodeid);
853 if (node->parent->nodeid == parent &&
882 node->nodeid = next_id(f);
925 ino = node->nodeid;
969 static void unlock_path(struct fuse *f, fuse_ino_t nodeid, struct node *wnode,
979 for (node = get_node(f, nodeid);
980 node != end && node->nodeid != FUSE_ROOT_ID; node = node->parent) {
990 static int try_get_path(struct fuse *f, fuse_ino_t nodeid, const char *name,
1019 wnode = lookup_node(f, nodeid, name);
1031 for (node = get_node(f, nodeid); node->nodeid != FUSE_ROOT_ID;
1064 unlock_path(f, nodeid, wnode, node);
1133 static void debug_path(struct fuse *f, const char *msg, fuse_ino_t nodeid,
1140 wnode = lookup_node(f, nodeid, name);
1144 msg, (unsigned long long) wnode->nodeid);
1147 msg, (unsigned long long) nodeid);
1185 static int get_path_common(struct fuse *f, fuse_ino_t nodeid, const char *name,
1191 err = try_get_path(f, nodeid, name, path, wnode, true);
1194 .nodeid1 = nodeid,
1199 debug_path(f, "QUEUE PATH", nodeid, name, !!wnode);
1201 debug_path(f, "DEQUEUE PATH", nodeid, name, !!wnode);
1208 static int get_path(struct fuse *f, fuse_ino_t nodeid, char **path)
1210 return get_path_common(f, nodeid, NULL, path, NULL);
1213 static int get_path_nullok(struct fuse *f, fuse_ino_t nodeid, char **path)
1220 err = get_path_common(f, nodeid, NULL, path, NULL);
1228 static int get_path_name(struct fuse *f, fuse_ino_t nodeid, const char *name,
1231 return get_path_common(f, nodeid, name, path, NULL);
1234 static int get_path_wrlock(struct fuse *f, fuse_ino_t nodeid, const char *name,
1237 return get_path_common(f, nodeid, name, path, wnode);
1253 id1 = node1 ? node1->nodeid : nodeid1;
1256 id2 = node2 ? node2->nodeid : nodeid2;
1258 for (node = get_node(f, id2); node->nodeid != FUSE_ROOT_ID;
1263 if (node->nodeid != id2 && node->nodeid == id1)
1269 for (node = get_node(f, id1); node->nodeid != FUSE_ROOT_ID;
1274 if (node->nodeid != id1 && node->nodeid == id2)
1331 static void free_path_wrlock(struct fuse *f, fuse_ino_t nodeid,
1335 unlock_path(f, nodeid, wnode, NULL);
1342 static void free_path(struct fuse *f, fuse_ino_t nodeid, char *path)
1345 free_path_wrlock(f, nodeid, NULL, path);
1361 static void forget_node(struct fuse *f, fuse_ino_t nodeid, uint64_t nlookup)
1364 if (nodeid == FUSE_ROOT_ID)
1367 node = get_node(f, nodeid);
1375 .nodeid1 = nodeid,
1378 debug_path(f, "QUEUE PATH (forget)", nodeid, NULL, false);
1386 debug_path(f, "DEQUEUE_PATH (forget)", nodeid, NULL, false);
1486 static void set_stat(struct fuse *f, fuse_ino_t nodeid, struct stat *stbuf)
1489 stbuf->st_ino = nodeid;
2387 (unsigned int) node->nodeid, f->hidectr);
2459 static int do_lookup(struct fuse *f, fuse_ino_t nodeid, const char *name,
2464 node = find_node(f, nodeid, name);
2468 e->ino = node->nodeid;
2481 static int lookup_path(struct fuse *f, fuse_ino_t nodeid,
2490 res = do_lookup(f, nodeid, name, e);
2659 parent = get_node(f, parent)->parent->nodeid;
2972 if (try_get_path(f, wnode->nodeid, NULL, &unlinkpath, NULL, false) == 0) {
3363 dh->nodeid = ino;
3455 res = node->nodeid;
3483 lookup_nodeid(dh->fuse, dh->nodeid, name);
3546 res = do_lookup(f, dh->nodeid, name, &e);
3561 lookup_nodeid(f, dh->nodeid, name);
5005 root->nodeid = FUSE_ROOT_ID;
5076 if (try_get_path(f, node->nodeid, NULL, &path, NULL, false) == 0) {