static void debug_memory(struct context* ctx) { /* dump memory as user requested */ if (rr_flags->dump_on == ctx->trace.stop_reason || rr_flags->dump_on == DUMP_ON_ALL || rr_flags->dump_at == ctx->trace.global_time) { char pid_str[PATH_MAX]; snprintf(pid_str, sizeof(pid_str) - 1, "%s/%d_%d_rep", get_trace_path(), ctx->child_tid, ctx->trace.global_time); print_process_memory(ctx, pid_str); } /* check memory checksum */ if (validate && ((rr_flags->checksum == CHECKSUM_ALL) || (rr_flags->checksum == CHECKSUM_SYSCALL && ctx->trace.state == STATE_SYSCALL_EXIT) || (rr_flags->checksum <= ctx->trace.global_time))) { validate_process_memory(ctx); } }
void print_memory(Process *p) { if (p != NULL) { print_process_memory(p); } }