Re: [src] cvs commit: src/include unistd.h src/lib/libc/sys readlink.2 src/sys/compat/freebsd32 syscalls.master src/sys/kern syscalls.master vfs_syscalls.c src/sys/sys syscallsubr.h

From: Daniel O'Connor <doconnor_at_gsoft.com.au>
Date: Fri, 15 Feb 2008 21:04:26 +1030
On Fri, 15 Feb 2008, Dag-Erling Smørgrav wrote:
> Kostik Belousov <kostikbel_at_gmail.com> writes:
> > The slightly contrived example below works on RELENG_7 amd64,
> > relevant output from the truss is
> > 	readlink("/usr/X11R6","l",1)                     = 1 (0x1)
> > on the CURRENT gives
> > 	readlink("/usr/X11R6","l",1)                     = -4294967295
> > (0xffffffff00000001) [also please note wrong output for the third
> > readlink arg; ktrace/kdump works ok].
>
> The only advantage truss has is the ability to decode structs
> (e.g. struct sockaddr in a connect() call).  Apart from that, ktrace
> / kdump is superior in every respect.

That's a pretty big advantage :)

Also, ktrace can't write to a pipe which means you need to run/process 
rather than 'stream'.

-- 
Daniel O'Connor software and network engineer
for Genesis Software - http://www.gsoft.com.au
"The nice thing about standards is that there
are so many of them to choose from."
  -- Andrew Tanenbaum
GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C

Received on Fri Feb 15 2008 - 09:34:51 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:27 UTC