Lines Matching defs:dsos
3 #include "dsos.h"
180 void __dsos__add(struct dsos *dsos, struct dso *dso)
182 list_add_tail(&dso->node, &dsos->head);
183 __dsos__findnew_link_by_longname_id(&dsos->root, dso, NULL, &dso->id);
207 void dsos__add(struct dsos *dsos, struct dso *dso)
209 down_write(&dsos->lock);
210 __dsos__add(dsos, dso);
211 up_write(&dsos->lock);
219 static struct dso *__dsos__find_id(struct dsos *dsos, const char *name, struct dso_id *id, bool cmp_short)
224 list_for_each_entry(pos, &dsos->head, node)
229 return __dsos__findnew_by_longname_id(&dsos->root, name, id);
232 struct dso *__dsos__find(struct dsos *dsos, const char *name, bool cmp_short)
234 return __dsos__find_id(dsos, name, NULL, cmp_short);
269 static struct dso *__dsos__addnew_id(struct dsos *dsos, const char *name, struct dso_id *id)
274 __dsos__add(dsos, dso);
282 struct dso *__dsos__addnew(struct dsos *dsos, const char *name)
284 return __dsos__addnew_id(dsos, name, NULL);
287 static struct dso *__dsos__findnew_id(struct dsos *dsos, const char *name, struct dso_id *id)
289 struct dso *dso = __dsos__find_id(dsos, name, id, false);
294 return dso ? dso : __dsos__addnew_id(dsos, name, id);
297 struct dso *dsos__findnew_id(struct dsos *dsos, const char *name, struct dso_id *id)
300 down_write(&dsos->lock);
301 dso = dso__get(__dsos__findnew_id(dsos, name, id));
302 up_write(&dsos->lock);