Date: Mon, 24 Jul 2006 19:55:14 +0200 From: Pav Lucistnik <pav@FreeBSD.org> To: Robert Watson <rwatson@FreeBSD.org> Cc: Tom Rhodes <trhodes@FreeBSD.org>, src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org, Xin LI <delphij@FreeBSD.org>, Greg 'groggy' Lehey <grog@FreeBSD.org>, Dag-Erling =?ISO-8859-1?Q?Sm=F8rgrav?= <des@des.no> Subject: Re: truss status (was: cvs commit: src/sys/dev/lmc if_lmc.h) Message-ID: <1153763714.20641.12.camel@ikaros.oook.cz> In-Reply-To: <20060724130731.D44945@fledge.watson.org> References: <200607210845.k6L8j0Ep026008@repoman.freebsd.org> <20060721062609.356f090f.trhodes@FreeBSD.org> <8664hrtcv1.fsf@xps.des.no> <20060724000259.GE16230@wantadilla.lemis.com> <20060724130731.D44945@fledge.watson.org>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --]
Robert Watson píše v po 24. 07. 2006 v 13:10 +0100:
> (3) truss is believed not to work properly with threaded applications. ktrace
> has been extended to know about thread IDs, and has always been able to
> generate traces properly for threaded apps, whereas truss likely doesn't
> see events from more than one thread (or if it does, it likely gets very
> mixed up). It might be good to confirm this.
Correct, truss is no-go on a multithreaded app. In the moment two
threads enter syscall simultaneously, the whole thing goes to hell,
because truss works as follows:
App enters syscall, truss stores the name of syscall
App exits syscall, truss receives the return value and print the info
--
Pav Lucistnik <pav@oook.cz>
<pav@FreeBSD.org>
It whines, glows and fades...
[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.4 (FreeBSD)
iD8DBQBExQmCntdYP8FOsoIRAsn3AJsECeZ/JYIfmvuvCUEKIsuaU2is6wCglH1H
lQXEoxtMZefrZcahxq5kbFk=
=+m2k
-----END PGP SIGNATURE-----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1153763714.20641.12.camel>
