From owner-freebsd-current@FreeBSD.ORG Fri Jan 18 11:29:44 2008 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5F46216A41A for ; Fri, 18 Jan 2008 11:29:44 +0000 (UTC) (envelope-from yuri.pankov@gmail.com) Received: from darklight.org.ru (darklight.org.ru [IPv6:2001:470:1f09:81::dead:c0de]) by mx1.freebsd.org (Postfix) with ESMTP id 8B59713C447 for ; Fri, 18 Jan 2008 11:29:42 +0000 (UTC) (envelope-from yuri.pankov@gmail.com) Received: from darklight.org.ru (yuri@darklight.org.ru [IPv6:::1]) by darklight.org.ru (8.14.2/8.14.2) with ESMTP id m0IBTWWN023133; Fri, 18 Jan 2008 14:29:32 +0300 (MSK) (envelope-from yuri.pankov@gmail.com) Received: (from yuri@localhost) by darklight.org.ru (8.14.2/8.14.2/Submit) id m0IBTV2d023132; Fri, 18 Jan 2008 14:29:31 +0300 (MSK) (envelope-from yuri.pankov@gmail.com) X-Authentication-Warning: darklight.org.ru: yuri set sender to yuri.pankov@gmail.com using -f Date: Fri, 18 Jan 2008 14:29:31 +0300 From: Yuri Pankov To: freebsd-current@freebsd.org Message-ID: <20080118112931.GB24750@darklight.org.ru> References: <20080118061338.GA24750@darklight.org.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20080118061338.GA24750@darklight.org.ru> User-Agent: Mutt/1.5.17 (2007-11-01) Subject: Re: SIGABRT on `cvs login` 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: Fri, 18 Jan 2008 11:29:44 -0000 On Fri, Jan 18, 2008 at 09:13:38AM +0300, Yuri Pankov wrote: > Hi, > > I'm getting SIGABRT running `cvs login`. It's -CURRENT/amd64 updated > on Jan, 16. > > Backtrace: > > (gdb) run login > Starting program: /usr/bin/cvs login > Logging in to :pserver:anoncvs@anoncvs.tw.freebsd.org:2401/home/ncvs > CVS password: <- using "anoncvs" here > cvs login: warning: failed to open /home/yuri/.cvspass for reading: No > such file or directory > Assertion failed: ((run->regs_mask[elm] & (1U << bit)) == 0), function > arena_run_reg_dalloc, file /usr/src/lib/libc/stdlib/malloc.c, line 2197. > > Program received signal SIGABRT, Aborted. > 0x00000008013f53cc in kill () at kill.S:2 > 2 RSYSCALL(kill) > Current language: auto; currently asm > (gdb) bt full > #0 0x00000008013f53cc in kill () at kill.S:2 > No locals. > #1 0x00000008013f423b in abort () at > /usr/src/lib/libc/stdlib/abort.c:65 > act = {__sigaction_u = {__sa_handler = 0x90, __sa_sigaction = > 0x90}, sa_flags = 8, sa_mask = {__bits = {4294967263, > 4294967295, 4294967295, 4294967295}}} > #2 0x00000008013dd225 in __assert (func=0x8289 0x8289: Bad address>, > file=0x6 , line=0, > failedexpr=0x0) at /usr/src/lib/libc/gen/assert.c:54 > No locals. > #3 0x0000000801383bf3 in arena_dalloc_small (arena=0x589e70, > chunk=Variable "chunk" is not available. > ) at /usr/src/lib/libc/stdlib/malloc.c:2197 > run = (arena_run_t *) 0x601000 > bin = (arena_bin_t *) 0x589fe8 > size = 16 > __func__ = "arena_dalloc_small" > #4 0x0000000801383ea6 in idalloc (ptr=0x6012a0) at > /usr/src/lib/libc/stdlib/malloc.c:3097 > chunk = (arena_chunk_t *) 0x600000 > __func__ = "idalloc" > #5 0x0000000801384177 in free (ptr=0x6012a0) at > /usr/src/lib/libc/stdlib/malloc.c:4571 > __func__ = "free" > #6 0x0000000000429bb2 in login (argc=Variable "argc" is not available. > ) at > /usr/src/gnu/usr.bin/cvs/cvs/../../../../contrib/cvs/src/login.c:574 > typed_password = 0x601290 'Z' > cvsroot_canonical = 0x613300 > ":pserver:anoncvs@anoncvs.tw.freebsd.org:2401/home/ncvs" > #7 0x000000000042c538 in main (argc=1, argv=0x7fffffffe668) > at > /usr/src/gnu/usr.bin/cvs/cvs/../../../../contrib/cvs/src/main.c:1010 > n = (Node *) 0x6131c0 > CVSroot_parsed = Variable "CVSroot_parsed" is not available. > > Any other info that I can provide? More details: diff between 1.11.17 and 1.11.22 Index: ccvs/src/client.c diff -u ccvs/src/client.c:1.318.4.20 ccvs/src/client.c:1.318.4.42 --- ccvs/src/client.c:1.318.4.20 Mon Apr 26 15:52:05 2004 +++ ccvs/src/client.c Thu Jun 8 19:58:30 2006 @@ -3914,6 +3921,7 @@ /* Paranoia. */ memset (password, 0, strlen (password)); + free (password); # else /* ! AUTH_CLIENT_SUPPORT */ error (1, 0, "INTERNAL ERROR: This client does not support pserver authentication"); # endif /* AUTH_CLIENT_SUPPORT */ password = get_cvs_password(), which returns cvs_password if it's set, and cvs_password is free()'d again in login.c. Yuri