Lines Matching refs:di_devlink_handle

142 struct di_devlink_handle {  struct
164 struct di_devlink_handle *handle; argument
176 int (*fcn)(struct di_devlink_handle *, void *, const char *);
286 static struct di_devlink_handle *handle_alloc(const char *dev_dir,
288 static int cache_alloc(struct di_devlink_handle *hdp);
289 static int open_db(struct di_devlink_handle *hdp, int flags);
290 static int invalid_db(struct di_devlink_handle *hdp, size_t fsize, long pg_sz);
291 static int read_nodes(struct di_devlink_handle *hdp, cache_node_t *pcnp,
293 static int read_minors(struct di_devlink_handle *hdp, cache_node_t *pcnp,
295 static int read_links(struct di_devlink_handle *hdp, cache_minor_t *pcmp,
297 static int init_hdr(struct di_devlink_handle *hdp, long page_sz,
299 static size_t size_db(struct di_devlink_handle *hdp, long page_sz,
301 static size_t seg_size(struct di_devlink_handle *hdp, int seg);
303 static cache_node_t *node_insert(struct di_devlink_handle *hdp,
305 static cache_minor_t *minor_insert(struct di_devlink_handle *hdp,
308 static cache_link_t *link_insert(struct di_devlink_handle *hdp,
314 static int write_nodes(struct di_devlink_handle *hdp, struct db_node *pdnp,
316 static int write_minors(struct di_devlink_handle *hdp, struct db_node *pdnp,
318 static int write_links(struct di_devlink_handle *hdp, struct db_minor *pdmp,
320 static void rm_link_from_hash(struct di_devlink_handle *hdp, cache_link_t *clp);
321 static uint32_t write_string(struct di_devlink_handle *hdp, const char *str,
323 static int close_db(struct di_devlink_handle *hdp);
324 static void cache_free(struct di_devlink_handle *hdp);
325 static void handle_free(struct di_devlink_handle **pp);
326 static void resolve_dangling_links(struct di_devlink_handle *hdp);
327 static void subtree_free(struct di_devlink_handle *hdp, cache_node_t **pp);
329 static void minor_free(struct di_devlink_handle *hdp, cache_minor_t **pp);
338 static void *lookup_node(struct di_devlink_handle *hdp, char *path,
340 static cache_link_t *add_link(struct di_devlink_handle *hdp, const char *link,
343 static void *lookup_minor(struct di_devlink_handle *hdp, const char *minor_path,
348 static void hash_insert(struct di_devlink_handle *hdp, cache_link_t *clp);
349 static uint_t hashfn(struct di_devlink_handle *hdp, const char *str);
350 static void get_db_path(struct di_devlink_handle *hdp, const char *fname,
353 static struct db_node *get_node(struct di_devlink_handle *hdp, uint32_t idx);
354 static struct db_node *set_node(struct di_devlink_handle *hdp, uint32_t idx);
356 static struct db_minor *get_minor(struct di_devlink_handle *hdp, uint32_t idx);
357 static struct db_minor *set_minor(struct di_devlink_handle *hdp, uint32_t idx);
359 static struct db_link *get_link(struct di_devlink_handle *hdp, uint32_t idx);
360 static struct db_link *set_link(struct di_devlink_handle *hdp, uint32_t idx);
362 static char *get_string(struct di_devlink_handle *hdp, uint32_t idx);
363 static char *set_string(struct di_devlink_handle *hdp, uint32_t idx);
365 static void *map_seg(struct di_devlink_handle *hdp, uint32_t idx, int prot,
368 static int walk_db(struct di_devlink_handle *hdp, link_desc_t *linkp);
369 static int walk_all_links(struct di_devlink_handle *hdp, link_desc_t *linkp);
370 static int walk_matching_links(struct di_devlink_handle *hdp,
372 static int visit_link(struct di_devlink_handle *hdp, link_desc_t *linkp,
380 static int cache_dev_link(struct di_devlink_handle *hdp, void *data,
383 static int walk_dev(struct di_devlink_handle *hdp, link_desc_t *linkp);
384 static int recurse_dev(struct di_devlink_handle *hdp, recurse_t *rp);
385 static int do_recurse(const char *dir, struct di_devlink_handle *hdp,
393 static void *get_last_node(struct di_devlink_handle *hdp, const char *path,
395 static void *get_last_minor(struct di_devlink_handle *hdp,
397 static void set_last_minor(struct di_devlink_handle *hdp, cache_minor_t *cmnp,
400 static int enter_db_lock(struct di_devlink_handle *hdp, const char *root_dir);
401 static void exit_db_lock(struct di_devlink_handle *hdp);
404 static const char *rel_path(struct di_devlink_handle *hdp, const char *path);
407 static cache_minor_t *link2minor(struct di_devlink_handle *hdp,