Lines Matching defs:mod_map

7877 	struct ftrace_mod_map *mod_map = container_of(rcu, struct ftrace_mod_map, rcu);
7881 /* All the contents of mod_map are now not visible to readers */
7882 list_for_each_entry_safe(mod_func, n, &mod_map->funcs, list) {
7888 kfree(mod_map);
7893 struct ftrace_mod_map *mod_map;
7904 * 'mod_map' resource needs to be released unconditionally.
7906 list_for_each_entry_safe(mod_map, n, &ftrace_mod_maps, list) {
7907 if (mod_map->mod == mod) {
7908 list_del_rcu(&mod_map->list);
7909 call_rcu(&mod_map->rcu, ftrace_free_mod_map);
8059 static void save_ftrace_mod_rec(struct ftrace_mod_map *mod_map,
8086 mod_map->num_funcs++;
8088 list_add_rcu(&mod_func->list, &mod_map->funcs);
8095 struct ftrace_mod_map *mod_map;
8100 mod_map = kmalloc_obj(*mod_map);
8101 if (!mod_map)
8104 mod_map->mod = mod;
8105 mod_map->start_addr = start;
8106 mod_map->end_addr = end;
8107 mod_map->num_funcs = 0;
8109 INIT_LIST_HEAD_RCU(&mod_map->funcs);
8111 list_add_rcu(&mod_map->list, &ftrace_mod_maps);
8113 return mod_map;
8117 ftrace_func_address_lookup(struct ftrace_mod_map *mod_map,
8124 list_for_each_entry_rcu(mod_func, &mod_map->funcs, list) {
8148 struct ftrace_mod_map *mod_map;
8151 /* mod_map is freed via call_rcu() */
8153 list_for_each_entry_rcu(mod_map, &ftrace_mod_maps, list) {
8154 ret = ftrace_func_address_lookup(mod_map, addr, size, off, sym);
8157 *modname = mod_map->mod->name;
8159 *modbuildid = module_buildid(mod_map->mod);
8172 struct ftrace_mod_map *mod_map;
8177 list_for_each_entry_rcu(mod_map, &ftrace_mod_maps, list) {
8179 if (symnum >= mod_map->num_funcs) {
8180 symnum -= mod_map->num_funcs;
8184 list_for_each_entry_rcu(mod_func, &mod_map->funcs, list) {
8193 strscpy(module_name, mod_map->mod->name, MODULE_NAME_LEN);
8208 static void save_ftrace_mod_rec(struct ftrace_mod_map *mod_map,
8292 struct ftrace_mod_map *mod_map = NULL;
8307 mod_map = allocate_ftrace_mod_map(mod, start, end);
8323 if (mod_map)
8324 save_ftrace_mod_rec(mod_map, rec);