Lines Matching full:rw
44 struct dfs_ref_walk *rw; in ref_walk_alloc() local
46 rw = kmalloc(sizeof(*rw), GFP_KERNEL); in ref_walk_alloc()
47 if (!rw) in ref_walk_alloc()
49 return rw; in ref_walk_alloc()
52 static inline void ref_walk_init(struct dfs_ref_walk *rw) in ref_walk_init() argument
54 memset(rw, 0, sizeof(*rw)); in ref_walk_init()
55 ref_walk_cur(rw) = ref_walk_start(rw); in ref_walk_init()
66 static inline void ref_walk_free(struct dfs_ref_walk *rw) in ref_walk_free() argument
68 struct dfs_ref *ref = ref_walk_start(rw); in ref_walk_free()
70 for (; ref <= ref_walk_end(rw); ref++) in ref_walk_free()
72 kfree(rw); in ref_walk_free()
75 static inline int ref_walk_advance(struct dfs_ref_walk *rw) in ref_walk_advance() argument
77 struct dfs_ref *ref = ref_walk_cur(rw) + 1; in ref_walk_advance()
79 if (ref > ref_walk_end(rw)) in ref_walk_advance()
82 ref_walk_cur(rw) = ref; in ref_walk_advance()
87 ref_walk_next_tgt(struct dfs_ref_walk *rw) in ref_walk_next_tgt() argument
90 struct dfs_ref *ref = ref_walk_cur(rw); in ref_walk_next_tgt()
100 static inline int ref_walk_get_tgt(struct dfs_ref_walk *rw, in ref_walk_get_tgt() argument
104 return dfs_cache_get_tgt_referral(ref_walk_path(rw) + 1, in ref_walk_get_tgt()
105 ref_walk_tit(rw), tgt); in ref_walk_get_tgt()
108 static inline int ref_walk_num_tgts(struct dfs_ref_walk *rw) in ref_walk_num_tgts() argument
110 return dfs_cache_get_nr_tgts(ref_walk_tl(rw)); in ref_walk_num_tgts()
113 static inline void ref_walk_set_tgt_hint(struct dfs_ref_walk *rw) in ref_walk_set_tgt_hint() argument
115 dfs_cache_noreq_update_tgthint(ref_walk_path(rw) + 1, in ref_walk_set_tgt_hint()
116 ref_walk_tit(rw)); in ref_walk_set_tgt_hint()