summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/src/9/port/syscallfmt.c24
1 files changed, 16 insertions, 8 deletions
diff --git a/sys/src/9/port/syscallfmt.c b/sys/src/9/port/syscallfmt.c
index 803481835..224f70b82 100644
--- a/sys/src/9/port/syscallfmt.c
+++ b/sys/src/9/port/syscallfmt.c
@@ -298,6 +298,8 @@ syscallfmt(ulong syscallno, uintptr pc, va_list list)
}
break;
case _NSEC:
+ if(sizeof(uintptr) == sizeof(vlong))
+ break;
v = va_arg(list, vlong*);
fmtprint(&fmt, "%#p", v);
break;
@@ -324,14 +326,6 @@ sysretfmt(ulong syscallno, va_list list, uintptr ret, uvlong start, uvlong stop)
errstr = "\"\"";
switch(syscallno){
- default:
- case ALARM:
- case _WRITE:
- case PWRITE:
- if((long)ret == -1)
- errstr = up->syserrstr;
- fmtprint(&fmt, " = %ld", (long)ret);
- break;
case EXEC:
case SEGBRK:
case SEGATTACH:
@@ -403,6 +397,20 @@ sysretfmt(ulong syscallno, va_list list, uintptr ret, uvlong start, uvlong stop)
}
fmtprint(&fmt, " = %ld", (long)ret);
break;
+ case _NSEC:
+ if(sizeof(uintptr) == sizeof(vlong)){
+ fmtprint(&fmt, " = %lld", (vlong)ret);
+ break;
+ }
+ /* wet floor */
+ case ALARM:
+ case _WRITE:
+ case PWRITE:
+ default:
+ if((long)ret == -1)
+ errstr = up->syserrstr;
+ fmtprint(&fmt, " = %ld", (long)ret);
+ break;
}
fmtprint(&fmt, " %s %#llud %#llud\n", errstr, start, stop);