Module Name: src
Committed By: jakllsch
Date: Sat Sep 15 19:16:58 UTC 2018
Modified Files:
src/sys/arch/aarch64/aarch64: db_trace.c
Log Message:
aarch64/db_trace.c: annotate w/ __printflike; fix discovered problems
To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/aarch64/aarch64/db_trace.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/aarch64/aarch64/db_trace.c
diff -u src/sys/arch/aarch64/aarch64/db_trace.c:1.4 src/sys/arch/aarch64/aarch64/db_trace.c:1.5
--- src/sys/arch/aarch64/aarch64/db_trace.c:1.4 Mon Jul 30 15:59:44 2018
+++ src/sys/arch/aarch64/aarch64/db_trace.c Sat Sep 15 19:16:58 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: db_trace.c,v 1.4 2018/07/30 15:59:44 ryo Exp $ */
+/* $NetBSD: db_trace.c,v 1.5 2018/09/15 19:16:58 jakllsch Exp $ */
/*
* Copyright (c) 2017 Ryo Shimizu <[email protected]>
@@ -28,7 +28,7 @@
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: db_trace.c,v 1.4 2018/07/30 15:59:44 ryo Exp $");
+__KERNEL_RCSID(0, "$NetBSD: db_trace.c,v 1.5 2018/09/15 19:16:58 jakllsch Exp $");
#include <sys/param.h>
#include <sys/proc.h>
@@ -89,7 +89,7 @@ getlwpnamebysp(uint64_t sp)
static void
pr_traceaddr(const char *prefix, uint64_t frame, uint64_t pc, int flags,
- void (*pr)(const char *, ...))
+ void (*pr)(const char *, ...) __printflike(1, 2))
{
db_expr_t offset;
db_sym_t sym;
@@ -100,27 +100,27 @@ pr_traceaddr(const char *prefix, uint64_
db_symbol_values(sym, &name, NULL);
if (flags & TRACEFLAG_LOOKUPLWP) {
- (*pr)("%s %016llx %s %s() at %016llx ",
+ (*pr)("%s %016lx %s %s() at %016lx ",
prefix, frame, getlwpnamebysp(frame), name, pc);
} else {
- (*pr)("%s %016llx %s() at %016llx ",
+ (*pr)("%s %016lx %s() at %016lx ",
prefix, frame, name, pc);
}
db_printsym(pc, DB_STGY_PROC, pr);
(*pr)("\n");
} else {
if (flags & TRACEFLAG_LOOKUPLWP) {
- (*pr)("%s %016llx %s ?() at %016llx\n",
+ (*pr)("%s %016lx %s ?() at %016lx\n",
prefix, frame, getlwpnamebysp(frame), pc);
} else {
- (*pr)("%s %016llx ?() at %016llx\n", prefix, frame, pc);
+ (*pr)("%s %016lx ?() at %016lx\n", prefix, frame, pc);
}
}
}
void
db_stack_trace_print(db_expr_t addr, bool have_addr, db_expr_t count,
- const char *modif, void (*pr)(const char *, ...))
+ const char *modif, void (*pr)(const char *, ...) __printflike(1, 2))
{
uint64_t lr, fp, lastlr, lastfp;
struct trapframe *tf = NULL;
@@ -196,26 +196,26 @@ db_stack_trace_print(db_expr_t addr, boo
if (addr == (db_addr_t)curlwp) {
fp = (uint64_t)&DDB_REGS->tf_reg[29]; /* ®[29]={fp,lr} */
tf = DDB_REGS;
- (*pr)("trace: pid %d lid %d (curlwp) at tf %016lx\n",
+ (*pr)("trace: pid %d lid %d (curlwp) at tf %p\n",
p.p_pid, l.l_lid, tf);
} else {
tf = l.l_md.md_ktf;
db_read_bytes((db_addr_t)&tf->tf_reg[29], sizeof(fp), (char *)&fp);
- (*pr)("trace: pid %d lid %d at tf %016lx\n",
+ (*pr)("trace: pid %d lid %d at tf %p\n",
p.p_pid, l.l_lid, tf);
}
} else if (tf == NULL) {
fp = addr;
- pr("trace fp %016llx\n", fp);
+ pr("trace fp %016lx\n", fp);
} else {
- pr("trace tf %016llx\n", tf);
+ pr("trace tf %p\n", tf);
}
if (count > MAXBACKTRACE)
count = MAXBACKTRACE;
if (tf != NULL) {
- (*pr)("---- trapframe %016llx (%d bytes) ----\n",
+ (*pr)("---- trapframe %p (%zu bytes) ----\n",
tf, sizeof(*tf));
dump_trapframe(tf, pr);
(*pr)("------------------------"
@@ -269,7 +269,7 @@ db_stack_trace_print(db_expr_t addr, boo
if (lr == 0)
break;
- (*pr)("---- trapframe %016llx (%d bytes) ----\n",
+ (*pr)("---- trapframe %p (%zu bytes) ----\n",
tf, sizeof(*tf));
dump_trapframe(tf, pr);
(*pr)("------------------------"