Lines Matching defs:elem_size
49 * @elem_size: Size of each stack trace element
54 static u32 stack_map_calculate_max_depth(u32 size, u32 elem_size, u64 flags)
60 max_depth = size / elem_size;
70 u64 elem_size = sizeof(struct stack_map_bucket) +
74 smap->elems = bpf_map_area_alloc(elem_size * smap->map.max_entries,
83 pcpu_freelist_populate(&smap->freelist, smap->elems, elem_size,
623 u32 elem_size = stack_map_data_size(map);
636 max_depth = stack_map_calculate_max_depth(map->value_size, elem_size, flags);
741 void *buf, u32 elem_size, u64 flags)
749 copy_len = trace_nr * elem_size;
763 static long callchain_finalize(void *buf, u32 size, u32 trace_nr, u32 elem_size,
768 u32 copy_len = trace_nr * elem_size;
786 u32 trace_nr, elem_size, max_depth;
796 elem_size = user_build_id ? sizeof(struct bpf_stack_build_id) : sizeof(u64);
797 if (unlikely(size % elem_size))
812 max_depth = stack_map_calculate_max_depth(size, elem_size, flags);
832 trace_nr = callchain_store(trace, trace->nr, buf, elem_size, flags);
839 return callchain_finalize(buf, size, trace_nr, elem_size, flags, may_fault);
942 u32 elem_size, max_depth, nr_trace;
948 elem_size = user_build_id ? sizeof(struct bpf_stack_build_id) : sizeof(u64);
949 if (unlikely(size % elem_size))
952 max_depth = stack_map_calculate_max_depth(size, elem_size, flags);
958 nr_trace = callchain_store(trace, trace_nr, buf, elem_size, flags);
959 return callchain_finalize(buf, size, nr_trace, elem_size, flags, false /* !may_fault */);