Lines Matching refs:cb
69 struct cb_data *cb = data; in call_fn_known_sch() local
72 if (cb->set) in call_fn_known_sch()
73 idset_sch_del(cb->set, sch->schid); in call_fn_known_sch()
74 if (cb->fn_known_sch) in call_fn_known_sch()
75 rc = cb->fn_known_sch(sch, cb->data); in call_fn_known_sch()
81 struct cb_data *cb = data; in call_fn_unknown_sch() local
84 if (idset_sch_contains(cb->set, schid)) in call_fn_unknown_sch()
85 rc = cb->fn_unknown_sch(schid, cb->data); in call_fn_unknown_sch()
91 struct cb_data *cb = data; in call_fn_all_sch() local
97 if (cb->fn_known_sch) in call_fn_all_sch()
98 rc = cb->fn_known_sch(sch, cb->data); in call_fn_all_sch()
101 if (cb->fn_unknown_sch) in call_fn_all_sch()
102 rc = cb->fn_unknown_sch(schid, cb->data); in call_fn_all_sch()
112 struct cb_data cb; in for_each_subchannel_staged() local
115 cb.data = data; in for_each_subchannel_staged()
116 cb.fn_known_sch = fn_known; in for_each_subchannel_staged()
117 cb.fn_unknown_sch = fn_unknown; in for_each_subchannel_staged()
121 cb.set = NULL; in for_each_subchannel_staged()
122 return bus_for_each_dev(&css_bus_type, NULL, &cb, in for_each_subchannel_staged()
126 cb.set = idset_sch_new(); in for_each_subchannel_staged()
127 if (!cb.set) in for_each_subchannel_staged()
129 return for_each_subchannel(call_fn_all_sch, &cb); in for_each_subchannel_staged()
131 idset_fill(cb.set); in for_each_subchannel_staged()
134 rc = bus_for_each_dev(&css_bus_type, NULL, &cb, call_fn_known_sch); in for_each_subchannel_staged()
139 rc = for_each_subchannel(call_fn_unknown_sch, &cb); in for_each_subchannel_staged()
141 idset_free(cb.set); in for_each_subchannel_staged()