tprintf("%ld, ", tcp->u_arg[0]);
} else {
/* arg 2: local iov */
- if (syserror(tcp)) {
- printaddr(tcp->u_arg[1]);
- } else {
- tprint_iov(tcp, tcp->u_arg[2], tcp->u_arg[1],
- IOV_DECODE_STR);
- }
+ tprint_iov_upto(tcp, tcp->u_arg[2], tcp->u_arg[1],
+ syserror(tcp) ? IOV_DECODE_ADDR : IOV_DECODE_STR,
+ tcp->u_rval);
/* arg 3: local iovcnt */
tprintf(", %lu, ", tcp->u_arg[2]);
/* arg 4: remote iov */
- if (syserror(tcp)) {
- printaddr(tcp->u_arg[3]);
- } else {
- tprint_iov(tcp, tcp->u_arg[4], tcp->u_arg[3],
- IOV_DECODE_ADDR);
- }
+ tprint_iov(tcp, tcp->u_arg[4], tcp->u_arg[3],
+ IOV_DECODE_ADDR);
/* arg 5: remote iovcnt */
/* arg 6: flags */
tprintf(", %lu, %lu", tcp->u_arg[4], tcp->u_arg[5]);