Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 15 Jul 2003 01:50:23 -0700
From:      Terry Lambert <tlambert2@mindspring.com>
To:        Daniel Eischen <eischen@vigrid.com>
Cc:        freebsd-threads@freebsd.org
Subject:   Re: truss says null()
Message-ID:  <3F13C04F.EF0D2649@mindspring.com>
References:  <Pine.GSO.4.10.10307142012500.10326-100000@pcnet5.pcnet.com>

next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
--------------6C4224CCB339F4B7608C57C1
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Daniel Eischen wrote:
> On Tue, 15 Jul 2003, Kai Mosebach wrote:
> > (null)()                                         = 383 (0x17f)
> 
> I don't know what the (null)'s are.  What does
> ktrace show?

The normal cause of this is a system call has been added, and truss
was not updated.  It needs to be given the names of the system calls
for it to be able to display them.  It could probably be a little
more graceful about it, and cons up a name, instead, when it gets
stale relative to the system (I have attached the patch I use
locally for this, if you want to commit something like it; it's
probably more proper to increase the number of arguments by one
and shift them all, and change the name of the system call to
"syscall", rather than do it this way, but it's enough to pass you
the information you need).

Note that applying this patch and recompiling will make applying
this patch unnecessary.  8-).  But if you commit it (or the "right"
one, described above), it will be there for the next person who has
the same problem.

If you don't care about that, then just go to /usr/src/usr.bin/truss
and "make clean all install".

-- Terry
--------------6C4224CCB339F4B7608C57C1
Content-Type: text/plain; charset=us-ascii;
 name="truss.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="truss.diff"

225,231c225
<     if (fsc.name == NULL) {
<       static char xbuf[20];
<       snprintf(buf, sizeof(xbuf), "syscall(%d)", fsc.number);
<       print_syscall(outfile, xbuf, fsc.nargs, fsc.s_args);
<     } else {
<       print_syscall(outfile, fsc.name, fsc.nargs, fsc.s_args);
<     }
---
>     print_syscall(outfile, fsc.name, fsc.nargs, fsc.s_args);

--------------6C4224CCB339F4B7608C57C1--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3F13C04F.EF0D2649>