From owner-freebsd-current@FreeBSD.ORG Tue Jun 19 22:26:49 2007 Return-Path: X-Original-To: current@freebsd.org Delivered-To: freebsd-current@FreeBSD.ORG Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 5530216A400 for ; Tue, 19 Jun 2007 22:26:49 +0000 (UTC) (envelope-from youshi10@u.washington.edu) Received: from mxout7.cac.washington.edu (mxout7.cac.washington.edu [140.142.32.178]) by mx1.freebsd.org (Postfix) with ESMTP id 347E313C484 for ; Tue, 19 Jun 2007 22:26:49 +0000 (UTC) (envelope-from youshi10@u.washington.edu) Received: from hymn01.u.washington.edu (hymn01.u.washington.edu [140.142.8.55]) by mxout7.cac.washington.edu (8.13.7+UW06.06/8.13.7+UW07.05) with ESMTP id l5JMQmRT015216 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Tue, 19 Jun 2007 15:26:48 -0700 Received: from localhost (localhost [127.0.0.1]) by hymn01.u.washington.edu (8.13.7+UW06.06/8.13.7+UW07.03) with ESMTP id l5JMQmuD002493 for ; Tue, 19 Jun 2007 15:26:48 -0700 X-Auth-Received: from [192.55.52.1] by hymn01.u.washington.edu via HTTP; Tue, 19 Jun 2007 15:26:48 PDT Date: Tue, 19 Jun 2007 15:26:48 -0700 (PDT) From: youshi10@u.washington.edu To: current@freebsd.org In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-PMX-Version: 5.3.1.294258, Antispam-Engine: 2.5.1.298604, Antispam-Data: 2007.6.19.150851 X-Uwash-Spam: Gauge=IIIIIII, Probability=7%, Report='NO_REAL_NAME 0, __CT 0, __CT_TEXT_PLAIN 0, __HAS_MSGID 0, __MIME_TEXT_ONLY 0, __MIME_VERSION 0, __SANE_MSGID 0' Cc: Subject: Re: truss(1) gets confused after execve X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 19 Jun 2007 22:26:49 -0000 On Tue, 19 Jun 2007, Michiel Boland wrote: > Hi. If i truss the following program > > #include > > extern char **environ; > > int main(int argc, char **argv) > { > execve("/usr/bin/false", argv, environ); > return 1; > } > > then everything after the execve() call is reported as garbage. > E.g. something like > [snip] > > execve("/usr/bin/false",,) > execve("/usr/bin/false",,) = 0 (0x0) > -- UNKNOWN SYSCALL -6040 -- > (null)(0x0,0x7fffffffe880,0x0,0x0,0x0) = 198 (0xc6) > -- UNKNOWN SYSCALL 5394432 -- > (null)(0xc5,0x0,0x2a0,0x3,0x1000) = 73 (0x49) > -- UNKNOWN SYSCALL 5394432 -- > > etc. > > Something looks not quite right here. > This is -CURRENT on amd64 if that matters. > > Also, truss on amd64 appears to coredump if the above program is compiled with > -m32. Probably because it gets the size of the argv and envp arguments wrong. > > Anyone looking into this yet? I could not find any relevant PRs with the word > truss in the title. > > Cheers > Michiel This might be related to my issues with pkg_add, profiling and coredumps. Did you rebuild CURRENT recently? -Garrett