From: erik quanstrom <quanstro@quanstro.net>
To: 9fans@9fans.net
Subject: Re: [9fans] syscall tracing: errstr
Date: Thu, 23 Aug 2012 13:45:49 -0400 [thread overview]
Message-ID: <7b91c25159e2f83bbf6632726c978d2d@kw.quanstro.net> (raw)
In-Reply-To: <CAG3N4d9b=7pRHSPbv0f7nBSWsXU4qfQ2MeFQMF--znGKxT_JBQ@mail.gmail.c>
On Thu Aug 23 13:11:05 EDT 2012, yarikos@gmail.com wrote:
> Anybody else noticed ratrace reporting an older errstr?
yes. i see the same thing. should be using up->syserrstr not up->errstr, i think.
i took the liberty of removing any system call that's been dead for more than a decade. :-)
the format of ratrace output is still essentially unparsable, and it's not utf-8 safe.
- erik
; diffy -c ../port/*fmt*.c
/n/dump/2012/0823/sys/src/9/port/syscallfmt.c:80,86 - ../port/syscallfmt.c:80,85
p = va_arg(list, uintptr);
fmtprint(&fmt, "%#p", p);
break;
- case _ERRSTR: /* deprecated */
case CHDIR:
case EXITS:
case REMOVE:
/n/dump/2012/0823/sys/src/9/port/syscallfmt.c:124,136 - ../port/syscallfmt.c:123,128
argv++;
}
break;
- case _FSESSION: /* deprecated */
- case _FSTAT: /* deprecated */
- case _FWSTAT: /* obsolete */
- i[0] = va_arg(list, int);
- a = va_arg(list, char*);
- fmtprint(&fmt, "%d %#p", i[0], a);
- break;
case FAUTH:
i[0] = va_arg(list, int);
a = va_arg(list, char*);
/n/dump/2012/0823/sys/src/9/port/syscallfmt.c:144,159 - ../port/syscallfmt.c:136,141
v = va_arg(list, void*);
fmtprint(&fmt, "%#p", v);
break;
- case _MOUNT: /* deprecated */
- i[0] = va_arg(list, int);
- fmtprint(&fmt, "%d ", i[0]);
- a = va_arg(list, char*);
- fmtuserstring(&fmt, a, " ");
- i[0] = va_arg(list, int);
- fmtprint(&fmt, "%#ux ", i[0]);
- a = va_arg(list, char*);
- fmtuserstring(&fmt, a, "");
- break;
case OPEN:
a = va_arg(list, char*);
fmtuserstring(&fmt, a, " ");
/n/dump/2012/0823/sys/src/9/port/syscallfmt.c:160,182 - ../port/syscallfmt.c:142,151
i[0] = va_arg(list, int);
fmtprint(&fmt, "%#ux", i[0]);
break;
- case OSEEK: /* deprecated */
- i[0] = va_arg(list, int);
- l = va_arg(list, long);
- i[1] = va_arg(list, int);
- fmtprint(&fmt, "%d %ld %d", i[0], l, i[1]);
- break;
case SLEEP:
l = va_arg(list, long);
fmtprint(&fmt, "%ld", l);
break;
- case _STAT: /* obsolete */
- case _WSTAT: /* obsolete */
- a = va_arg(list, char*);
- fmtuserstring(&fmt, a, " ");
- a = va_arg(list, char*);
- fmtprint(&fmt, "%#p", a);
- break;
case RFORK:
i[0] = va_arg(list, int);
fmtprint(&fmt, "%#ux", i[0]);
/n/dump/2012/0823/sys/src/9/port/syscallfmt.c:203,209 - ../port/syscallfmt.c:172,177
break;
case NOTIFY:
case SEGDETACH:
- case _WAIT: /* deprecated */
v = va_arg(list, void*);
fmtprint(&fmt, "%#p", v);
break;
/n/dump/2012/0823/sys/src/9/port/syscallfmt.c:274,291 - ../port/syscallfmt.c:242,255
a = va_arg(list, char*);
fmtuserstring(&fmt, a, "");
break;
- case _READ: /* deprecated */
case PREAD:
i[0] = va_arg(list, int);
v = va_arg(list, void*);
l = va_arg(list, long);
fmtprint(&fmt, "%d %#p %ld", i[0], v, l);
- if(syscallno == PREAD){
- vl = va_arg(list, vlong);
- fmtprint(&fmt, " %lld", vl);
- }
+ vl = va_arg(list, vlong);
+ fmtprint(&fmt, " %lld", vl);
break;
- case _WRITE: /* deprecated */
case PWRITE:
i[0] = va_arg(list, int);
v = va_arg(list, void*);
/n/dump/2012/0823/sys/src/9/port/syscallfmt.c:294,303 - ../port/syscallfmt.c:258,265
len = MIN(l, 64);
fmtrwdata(&fmt, v, len, " ");
fmtprint(&fmt, "%ld", l);
- if(syscallno == PWRITE){
- vl = va_arg(list, vlong);
- fmtprint(&fmt, " %lld", vl);
- }
+ vl = va_arg(list, vlong);
+ fmtprint(&fmt, " %lld", vl);
break;
}
/n/dump/2012/0823/sys/src/9/port/syscallfmt.c:323,336 - ../port/syscallfmt.c:285,297
switch(syscallno){
default:
if(ret == -1)
- errstr = up->errstr;
+ errstr = up->syserrstr;
fmtprint(&fmt, " = %ld", ret);
break;
case ALARM:
- case _WRITE:
case PWRITE:
if(ret == -1)
- errstr = up->errstr;
+ errstr = up->syserrstr;
fmtprint(&fmt, " = %ld", ret);
break;
case EXEC:
/n/dump/2012/0823/sys/src/9/port/syscallfmt.c:338,344 - ../port/syscallfmt.c:299,305
case SEGATTACH:
case RENDEZVOUS:
if((void *)ret == (void*)-1)
- errstr = up->errstr;
+ errstr = up->syserrstr;
fmtprint(&fmt, " = %#p", (void *)ret);
break;
case AWAIT:
/n/dump/2012/0823/sys/src/9/port/syscallfmt.c:350,359 - ../port/syscallfmt.c:311,319
}
else{
fmtprint(&fmt, "%#p/\"\" %lud = %ld", a, l, ret);
- errstr = up->errstr;
+ errstr = up->syserrstr;
}
break;
- case _ERRSTR:
case ERRSTR:
a = va_arg(list, char*);
if(syscallno == _ERRSTR)
/n/dump/2012/0823/sys/src/9/port/syscallfmt.c:366,372 - ../port/syscallfmt.c:326,332
}
else{
fmtprint(&fmt, "\"\" %lud = %ld", l, ret);
- errstr = up->errstr;
+ errstr = up->syserrstr;
}
break;
case FD2PATH:
/n/dump/2012/0823/sys/src/9/port/syscallfmt.c:380,389 - ../port/syscallfmt.c:340,348
}
else{
fmtprint(&fmt, "\"\" %lud = %ld", l, ret);
- errstr = up->errstr;
+ errstr = up->syserrstr;
}
break;
- case _READ:
case PREAD:
i = va_arg(list, int);
USED(i);
/n/dump/2012/0823/sys/src/9/port/syscallfmt.c:395,401 - ../port/syscallfmt.c:354,360
}
else{
fmtprint(&fmt, "/\"\"");
- errstr = up->errstr;
+ errstr = up->syserrstr;
}
fmtprint(&fmt, " %ld", l);
if(syscallno == PREAD){
next parent reply other threads:[~2012-08-23 17:45 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CAG3N4d9b=7pRHSPbv0f7nBSWsXU4qfQ2MeFQMF--znGKxT_JBQ@mail.gmail.c>
2012-08-23 17:45 ` erik quanstrom [this message]
2012-08-27 4:10 ` ron minnich
[not found] ` <CAP6exYKyMipMjJVfBbsWTrXchWjdKQMXpjGn963h93EWrDwYNA@mail.gmail.c>
2012-08-27 6:27 ` erik quanstrom
2012-08-28 16:02 ` ron minnich
[not found] ` <CAP6exY+VEV_3CLK53oycH47CADvzNXyWpNn+_E74Sz88TQjkcA@mail.gmail.c>
2012-08-28 16:18 ` erik quanstrom
2012-08-28 19:36 ` ron minnich
2012-08-23 17:10 Yaroslav
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7b91c25159e2f83bbf6632726c978d2d@kw.quanstro.net \
--to=quanstro@quanstro.net \
--cc=9fans@9fans.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).