1 // SPDX-License-Identifier: GPL-2.0 2 #include "map_symbol.h" 3 #include "maps.h" 4 #include "map.h" 5 #include "thread.h" 6 7 void map_symbol__exit(struct map_symbol *ms) 8 { 9 thread__zput(ms->thread); 10 map__zput(ms->map); 11 } 12 13 void addr_map_symbol__exit(struct addr_map_symbol *ams) 14 { 15 map_symbol__exit(&ams->ms); 16 } 17 18 void map_symbol__copy(struct map_symbol *dst, struct map_symbol *src) 19 { 20 dst->thread = thread__get(src->thread); 21 dst->map = map__get(src->map); 22 dst->sym = src->sym; 23 } 24 25 void addr_map_symbol__copy(struct addr_map_symbol *dst, struct addr_map_symbol *src) 26 { 27 map_symbol__copy(&dst->ms, &src->ms); 28 29 dst->addr = src->addr; 30 dst->al_addr = src->al_addr; 31 dst->al_level = src->al_level; 32 dst->phys_addr = src->phys_addr; 33 dst->data_page_size = src->data_page_size; 34 } 35