Lines Matching full:rw
42 struct dfs_ref_walk *rw; in ref_walk_alloc() local
44 rw = kmalloc(sizeof(*rw), GFP_KERNEL); in ref_walk_alloc()
45 if (!rw) in ref_walk_alloc()
47 return rw; in ref_walk_alloc()
50 static inline void ref_walk_init(struct dfs_ref_walk *rw) in ref_walk_init() argument
52 memset(rw, 0, sizeof(*rw)); in ref_walk_init()
53 ref_walk_cur(rw) = ref_walk_start(rw); in ref_walk_init()
64 static inline void ref_walk_free(struct dfs_ref_walk *rw) in ref_walk_free() argument
66 struct dfs_ref *ref = ref_walk_start(rw); in ref_walk_free()
68 for (; ref <= ref_walk_end(rw); ref++) in ref_walk_free()
70 kfree(rw); in ref_walk_free()
73 static inline int ref_walk_advance(struct dfs_ref_walk *rw) in ref_walk_advance() argument
75 struct dfs_ref *ref = ref_walk_cur(rw) + 1; in ref_walk_advance()
77 if (ref > ref_walk_end(rw)) in ref_walk_advance()
80 ref_walk_cur(rw) = ref; in ref_walk_advance()
85 ref_walk_next_tgt(struct dfs_ref_walk *rw) in ref_walk_next_tgt() argument
88 struct dfs_ref *ref = ref_walk_cur(rw); in ref_walk_next_tgt()
98 static inline int ref_walk_get_tgt(struct dfs_ref_walk *rw, in ref_walk_get_tgt() argument
102 return dfs_cache_get_tgt_referral(ref_walk_path(rw) + 1, in ref_walk_get_tgt()
103 ref_walk_tit(rw), tgt); in ref_walk_get_tgt()
106 static inline int ref_walk_num_tgts(struct dfs_ref_walk *rw) in ref_walk_num_tgts() argument
108 return dfs_cache_get_nr_tgts(ref_walk_tl(rw)); in ref_walk_num_tgts()
111 static inline void ref_walk_set_tgt_hint(struct dfs_ref_walk *rw) in ref_walk_set_tgt_hint() argument
113 dfs_cache_noreq_update_tgthint(ref_walk_path(rw) + 1, in ref_walk_set_tgt_hint()
114 ref_walk_tit(rw)); in ref_walk_set_tgt_hint()