recursed_functions
cmpxchg(&recursed_functions[index].ip, ip, 0);
ret = &recursed_functions[*pos];
return p < index ? &recursed_functions[p] : NULL;
static struct recursed_functions recursed_functions[CONFIG_FTRACE_RECORD_RECURSION_SIZE];
struct recursed_functions *record = v;
memset(recursed_functions, 0, sizeof(recursed_functions));
if (recursed_functions[i].ip == ip) {
old = cmpxchg(&recursed_functions[index].ip, 0, ip);
recursed_functions[index].parent_ip = parent_ip;