if (forks && (pipe(child_ready_pipe) < 0 || pipe(go_pipe) < 0)) {
                perror("failed to create pipes");
-               exit(1);
+               return -1;
        }
 
        if (forks) {
                        }
                        if (child_pid != -1)
                                kill(child_pid, SIGTERM);
-                       die("Not all events could be opened.\n");
+
+                       pr_err("Not all events could be opened.\n");
                        return -1;
                }
                counter->supported = true;
                output = fopen(output_name, mode);
                if (!output) {
                        perror("failed to create output file");
-                       exit(-1);
+                       return -1;
                }
                clock_gettime(CLOCK_REALTIME, &tm);
                fprintf(output, "# started on %s\n", ctime(&tm.tv_sec));