Date: Mon, 13 Sep 2004 23:41:43 +0900 From: Jun Kuriyama <kuriyama@imgsrc.co.jp> To: "Elliot Finley" <lists@efinley.com> Cc: freebsd-current@freebsd.org Subject: Re: Beta3 core dump Message-ID: <7misainsd4.wl@black.imgsrc.co.jp> In-Reply-To: <7my8jgomga.wl@black.imgsrc.co.jp> References: <06c601c4973a$1d1c5570$32cba1cd@science1> <7m8ybip6qm.wl@black.imgsrc.co.jp> <072201c4975c$db5bfa00$32cba1cd@science1> <7mzn3xo1mj.wl@black.imgsrc.co.jp> <07bb01c49812$bf4463a0$32cba1cd@science1> <7my8jgomga.wl@black.imgsrc.co.jp>
next in thread | previous in thread | raw e-mail | index | archive | help
At Sun, 12 Sep 2004 00:27:17 +0900, kuriyama wrote: > > Just so you're clear on what I'm doing. I made the code change, then in > > /usr/src/lib/libc I do a 'make' then a 'make install', then I do a > > 'portsdb -fu'. > > Thanks. My patch fixes 3 boxes in my office, but I find next one > still dumps core even with patch. I'll dig into more... Okay, I find NetBSD has already fixes for this. Please test with this patch if you still have problem with "portsdb -u". ==== //depot/user/kuriyama/ref5/src/lib/libc/db/btree/bt_split.c#3 - /home/kuriyama/p4/kuriyama/ref5/src/lib/libc/db/btree/bt_split.c ==== @@ -355,8 +355,6 @@ /* Put the new right page for the split into place. */ if ((r = __bt_new(t, &npg)) == NULL) return (NULL); - /* XXX: Workaround for broken page data. */ - memset(r, 0xff, t->bt_psize); r->pgno = npg; r->lower = BTDATAOFF; r->upper = t->bt_psize; @@ -728,7 +726,7 @@ * the right page. */ if (skip <= off) { - skip = 0; + skip = MAX_PAGE_OFFSET; rval = l; } else { rval = r; @@ -738,7 +736,7 @@ for (off = 0; nxt < top; ++off) { if (skip == nxt) { ++off; - skip = 0; + skip = MAX_PAGE_OFFSET; } switch (h->flags & P_TYPE) { case P_BINTERNAL: -- Jun Kuriyama <kuriyama@imgsrc.co.jp> // IMG SRC, Inc. <kuriyama@FreeBSD.org> // FreeBSD Project
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?7misainsd4.wl>