From owner-cvs-all@FreeBSD.ORG Fri Sep 10 14:45:00 2004 Return-Path: Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 96F5E16A4CE; Fri, 10 Sep 2004 14:45:00 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8DFFC43D1D; Fri, 10 Sep 2004 14:45:00 +0000 (GMT) (envelope-from kuriyama@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i8AEj00x054406; Fri, 10 Sep 2004 14:45:00 GMT (envelope-from kuriyama@repoman.freebsd.org) Received: (from kuriyama@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i8AEj0KW054405; Fri, 10 Sep 2004 14:45:00 GMT (envelope-from kuriyama) Message-Id: <200409101445.i8AEj0KW054405@repoman.freebsd.org> From: Jun Kuriyama Date: Fri, 10 Sep 2004 14:45:00 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/lib/libc/db/btree bt_split.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 10 Sep 2004 14:45:00 -0000 kuriyama 2004-09-10 14:45:00 UTC FreeBSD src repository Modified files: lib/libc/db/btree bt_split.c Log: I found "portsdb -u" dumps core with recent INDEX file, and this is caused by refering broken (uninitialized?) pointer which is retrieved from __bt_new() (and from mpool_new()). I don't know why this linp[0] is read before stored because this should be controlled by .lower and .upper member of PAGE structure which are correctly initialized. But this workaround fixes the problem on my environment and this module has #ifdef PURIFY option which initializes new and reused memory from mpool by memset(p, 0xff, size) like as I did. Please feel free to fix the real bug instead of my workaround. Revision Changes Path 1.6 +2 -0 src/lib/libc/db/btree/bt_split.c