Lines Matching refs:dcs
53 static inline unsigned long dcookie_value(struct dcookie_struct * dcs) in dcookie_value() argument
55 return (unsigned long)dcs->path.dentry; in dcookie_value()
68 struct dcookie_struct * dcs; in find_dcookie() local
75 dcs = list_entry(pos, struct dcookie_struct, hash_list); in find_dcookie()
76 if (dcookie_value(dcs) == dcookie) { in find_dcookie()
77 found = dcs; in find_dcookie()
86 static void hash_dcookie(struct dcookie_struct * dcs) in hash_dcookie() argument
88 struct list_head * list = dcookie_hashtable + dcookie_hash(dcookie_value(dcs)); in hash_dcookie()
89 list_add(&dcs->hash_list, list); in hash_dcookie()
95 struct dcookie_struct *dcs = kmem_cache_alloc(dcookie_cache, in alloc_dcookie() local
98 if (!dcs) in alloc_dcookie()
106 dcs->path = *path; in alloc_dcookie()
108 hash_dcookie(dcs); in alloc_dcookie()
109 return dcs; in alloc_dcookie()
119 struct dcookie_struct * dcs; in get_dcookie() local
129 dcs = find_dcookie((unsigned long)path->dentry); in get_dcookie()
131 dcs = alloc_dcookie(path); in get_dcookie()
132 if (!dcs) { in get_dcookie()
138 *cookie = dcookie_value(dcs); in get_dcookie()
156 struct dcookie_struct * dcs; in do_lookup_dcookie() local
171 if (!(dcs = find_dcookie(cookie))) in do_lookup_dcookie()
180 path = d_path(&dcs->path, kbuf, PAGE_SIZE); in do_lookup_dcookie()
276 static void free_dcookie(struct dcookie_struct * dcs) in free_dcookie() argument
278 struct dentry *d = dcs->path.dentry; in free_dcookie()
284 path_put(&dcs->path); in free_dcookie()
285 kmem_cache_free(dcookie_cache, dcs); in free_dcookie()
294 struct dcookie_struct * dcs; in dcookie_exit() local
300 dcs = list_entry(pos, struct dcookie_struct, hash_list); in dcookie_exit()
301 list_del(&dcs->hash_list); in dcookie_exit()
302 free_dcookie(dcs); in dcookie_exit()