MINOR: signal: don't block SIGPROF by default

SIGPROF is blocked then restored to default settings, which sometimes
makes profiling harder. Let's not block it by default nor restore it,
it doesn't serve any purpose anyway.
diff --git a/src/signal.c b/src/signal.c
index e1f5a83..fb6980b 100644
--- a/src/signal.c
+++ b/src/signal.c
@@ -106,6 +106,7 @@
 	memset(signal_queue, 0, sizeof(signal_queue));
 	memset(signal_state, 0, sizeof(signal_state));
 	sigfillset(&blocked_sig);
+	sigdelset(&blocked_sig, SIGPROF);
 	for (sig = 0; sig < MAX_SIGNAL; sig++)
 		LIST_INIT(&signal_state[sig].handlers);
 
@@ -120,7 +121,8 @@
 	struct sig_handler *sh, *shb;
 
 	for (sig = 0; sig < MAX_SIGNAL; sig++) {
-		signal(sig, SIG_DFL);
+		if (sig != SIGPROF)
+			signal(sig, SIG_DFL);
 		list_for_each_entry_safe(sh, shb, &signal_state[sig].handlers, list) {
 			LIST_DEL(&sh->list);
 			pool_free2(pool2_sig_handlers, sh);