Lines Matching defs:dsos
3 #include "dsos.h"
168 void __dsos__add(struct dsos *dsos, struct dso *dso)
170 list_add_tail(&dso->node, &dsos->head);
171 __dsos__findnew_link_by_longname_id(&dsos->root, dso, NULL, &dso->id);
195 void dsos__add(struct dsos *dsos, struct dso *dso)
197 down_write(&dsos->lock);
198 __dsos__add(dsos, dso);
199 up_write(&dsos->lock);
207 static struct dso *__dsos__find_id(struct dsos *dsos, const char *name, struct dso_id *id, bool cmp_short)
212 list_for_each_entry(pos, &dsos->head, node)
217 return __dsos__findnew_by_longname_id(&dsos->root, name, id);
220 struct dso *__dsos__find(struct dsos *dsos, const char *name, bool cmp_short)
222 return __dsos__find_id(dsos, name, NULL, cmp_short);
257 static struct dso *__dsos__addnew_id(struct dsos *dsos, const char *name, struct dso_id *id)
262 __dsos__add(dsos, dso);
270 struct dso *__dsos__addnew(struct dsos *dsos, const char *name)
272 return __dsos__addnew_id(dsos, name, NULL);
275 static struct dso *__dsos__findnew_id(struct dsos *dsos, const char *name, struct dso_id *id)
277 struct dso *dso = __dsos__find_id(dsos, name, id, false);
282 return dso ? dso : __dsos__addnew_id(dsos, name, id);
285 struct dso *dsos__findnew_id(struct dsos *dsos, const char *name, struct dso_id *id)
288 down_write(&dsos->lock);
289 dso = dso__get(__dsos__findnew_id(dsos, name, id));
290 up_write(&dsos->lock);