Trivial tweaks to error messages

* strace.c (test_ptrace_setoptions_followfork): Use kill_save_errno
instead of kill.
(trace): Use perror_msg instead of perror.
* count.c (set_sortby): Use error_msg_and_die instead of fprintf.
* syscall.c (qualify): Likewise.
* util.c (ptrace_restart): Expand error message.
(umoven): Likewise.
(umovestr): Likewise.
(upeek): Use perror_msg instead of sprintf + perror.

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
diff --git a/count.c b/count.c
index c532747..673c354 100644
--- a/count.c
+++ b/count.c
@@ -130,8 +130,7 @@
 	else if (strcmp(sortby, "nothing") == 0)
 		sortfun = NULL;
 	else {
-		fprintf(stderr, "invalid sortby: `%s'\n", sortby);
-		exit(1);
+		error_msg_and_die("invalid sortby: '%s'", sortby);
 	}
 }
 
diff --git a/strace.c b/strace.c
index 9b026e3..d774611 100644
--- a/strace.c
+++ b/strace.c
@@ -775,7 +775,7 @@
 		if (ptrace(PTRACE_TRACEME, 0L, 0L, 0L) < 0)
 			perror_msg_and_die("%s: PTRACE_TRACEME doesn't work",
 					   __func__);
-		kill(pid, SIGSTOP);
+		kill_save_errno(pid, SIGSTOP);
 		if (fork() < 0)
 			perror_msg_and_die("fork");
 		_exit(0);
@@ -789,7 +789,7 @@
 		if (tracee_pid <= 0) {
 			if (errno == EINTR)
 				continue;
-			else if (errno == ECHILD)
+			if (errno == ECHILD)
 				break;
 			kill_save_errno(pid, SIGKILL);
 			perror_msg_and_die("%s: unexpected wait result %d",
@@ -813,7 +813,7 @@
 		if (!WIFSTOPPED(status)) {
 			if (tracee_pid != pid)
 				kill_save_errno(tracee_pid, SIGKILL);
-			kill(pid, SIGKILL);
+			kill_save_errno(pid, SIGKILL);
 			error_msg_and_die("%s: unexpected wait status %x",
 					  __func__, status);
 		}
@@ -1655,7 +1655,7 @@
 				return 0;
 			default:
 				errno = wait_errno;
-				perror("strace: wait");
+				perror_msg("wait");
 				return -1;
 			}
 		}
diff --git a/syscall.c b/syscall.c
index dce7056..f54df0f 100644
--- a/syscall.c
+++ b/syscall.c
@@ -510,9 +510,8 @@
 			continue;
 		}
 		if (opt->qualify(p, opt->bitflag, not)) {
-			fprintf(stderr, "strace: invalid %s `%s'\n",
+			error_msg_and_die("invalid %s '%s'",
 				opt->argument_name, p);
-			exit(1);
 		}
 	}
 	free(copy);
diff --git a/util.c b/util.c
index 640f246..a7cb19c 100644
--- a/util.c
+++ b/util.c
@@ -219,7 +219,7 @@
 	if (op == PTRACE_LISTEN)
 		msg = "LISTEN";
 #endif
-	perror_msg("ptrace(PTRACE_%s,1,%d)", msg, sig);
+	perror_msg("ptrace(PTRACE_%s,pid:%d,1,sig:%d)", msg, tcp->pid, sig);
 	return -1;
 }
 
@@ -851,7 +851,7 @@
 		if (errno) {
 			/* But if not started, we had a bogus address. */
 			if (addr != 0 && errno != EIO && errno != ESRCH)
-				perror("ptrace: umoven");
+				perror_msg("umoven: PTRACE_PEEKDATA pid:%d @0x%lx", pid, addr);
 			return -1;
 		}
 		started = 1;
@@ -868,7 +868,7 @@
 				return 0;
 			}
 			if (addr != 0 && errno != EIO && errno != ESRCH)
-				perror("ptrace: umoven");
+				perror_msg("umoven: PTRACE_PEEKDATA pid:%d @0x%lx", pid, addr);
 			return -1;
 		}
 		started = 1;
@@ -966,7 +966,7 @@
 		u.val = ptrace(PTRACE_PEEKDATA, pid, (char *)addr, 0);
 		if (errno) {
 			if (addr != 0 && errno != EIO && errno != ESRCH)
-				perror("umovestr");
+				perror_msg("umovestr: PTRACE_PEEKDATA pid:%d @0x%lx", pid, addr);
 			return -1;
 		}
 		started = 1;
@@ -986,7 +986,7 @@
 				return 0;
 			}
 			if (addr != 0 && errno != EIO && errno != ESRCH)
-				perror("umovestr");
+				perror_msg("umovestr: PTRACE_PEEKDATA pid:%d @0x%lx", pid, addr);
 			return -1;
 		}
 		started = 1;
@@ -1014,9 +1014,7 @@
 	val = do_ptrace(PTRACE_PEEKUSER, tcp, (char *) off, 0);
 	if (val == -1 && errno) {
 		if (errno != ESRCH) {
-			char buf[60];
-			sprintf(buf, "upeek: ptrace(PTRACE_PEEKUSER,%d,%lu,0)", tcp->pid, off);
-			perror(buf);
+			perror_msg("upeek: PTRACE_PEEKUSER pid:%d @0x%lx)", tcp->pid, off);
 		}
 		return -1;
 	}