From owner-freebsd-fs@FreeBSD.ORG Mon Jun 16 04:00:29 2008 Return-Path: Delivered-To: freebsd-fs@FreeBSD.ORG Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8322C1065672; Mon, 16 Jun 2008 04:00:29 +0000 (UTC) (envelope-from cracauer@koef.zs64.net) Received: from koef.zs64.net (koef.zs64.net [212.12.50.230]) by mx1.freebsd.org (Postfix) with ESMTP id EDA0A8FC2B; Mon, 16 Jun 2008 04:00:28 +0000 (UTC) (envelope-from cracauer@koef.zs64.net) Received: from koef.zs64.net (koef.zs64.net [212.12.50.230]) by koef.zs64.net (8.14.3/8.14.3) with ESMTP id m5G3gwiE098237; Mon, 16 Jun 2008 05:42:58 +0200 (CEST) (envelope-from cracauer@koef.zs64.net) Received: (from cracauer@localhost) by koef.zs64.net (8.14.3/8.14.3/Submit) id m5G3gwIK098234; Sun, 15 Jun 2008 23:42:58 -0400 (EDT) (envelope-from cracauer) Date: Sun, 15 Jun 2008 23:42:58 -0400 From: Martin Cracauer To: Kris Kennaway Message-ID: <20080616034258.GA94873@cons.org> References: <20080118120140.2a8170a0@dev> <47921931.9050606@FreeBSD.org> <47921AE2.1060004@FreeBSD.org> <20080301220924.72bf355d@dev.citybikes.cz> <47C9C912.1020700@FreeBSD.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <47C9C912.1020700@FreeBSD.org> User-Agent: Mutt/1.4.2.3i Cc: freebsd-fs@FreeBSD.ORG, cracauer@FreeBSD.ORG, freebsd-stable@FreeBSD.ORG, maxim@FreeBSD.ORG Subject: Re: infinite loop when copying to ext2fs X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Jun 2008 04:00:29 -0000 Kris Kennaway wrote on Sat, Mar 01, 2008 at 10:22:26PM +0100: > Jakub Siroky wrote: > >I've just confirmed the same situation on 6.2-RELEASE amd64/GENERIC. I > >did not noticed it before because I started using ext2fs extensively > >some months ago. > > > >Regards, > >Jakub > > > >On Sat, 19 Jan 2008 16:44:34 +0100 > >Kris Kennaway wrote: > > > >>Kris Kennaway wrote: > >>>Jakub Siroky wrote: > >>>>I have two large ext2fs partitions (368 and 313GB) to hold data > >>>>shared between several OSes. While there were no problems on > >>>>6-STABLE branch I was quite disappointed after upgrade to > >>>>7-STABLE. Whenever I copy/write to ext2fs partition the system > >>>>freezes totally without crashdump. So I set debugging settings to > >>>>kernel config (DEBUG,WITNESS,..) and in console I reproduced error > >>>>situation ending with full screen of unstoppable running text with > >>>>lot of memory addresses and a few recognisable words: 'new block > >>>>bit set for ext already' - again with no crashdump. Then I have > >>>>formatted 1GB partition with ext2fs and the problem on this small > >>>>partition appears only sometimes. > >>>OK, I am able to reproduce this. > >>> > >>>Kris > >>> > >>Is anyone able to look at this? I could not spot a candidate change > >>that has not been merged to 6.x. > >> > >>Kris > > > > > > Sounds like it may have been broken by the change to ext2_bitops.h by > cracauer. Can you confirm whether backing out 1.2.2.1 fixes it? I don't think my change can cause a new endless loop. I only reversed the order of tests to ensure we don't overrun a page bounddary (into possibly unmapped space). - while(*p == ~0U && ofs < sz) { + while(ofs < sz && *p == ~0U) { It is, however, likely that the code was buggy in the first place. Linux has replaced all this (the allocation code). Also note that the code I fixed is amd64 only. If the endless loop appears on i386 it's something else. Martin -- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Martin Cracauer http://www.cons.org/cracauer/ FreeBSD - where you want to go, today. http://www.freebsd.org/