Date: Mon, 16 Jun 2008 08:16:09 -0400 From: Martin Cracauer <cracauer@cons.org> To: Kris Kennaway <kris@FreeBSD.org> Cc: maxim@FreeBSD.org, freebsd-stable@FreeBSD.org, freebsd-fs@FreeBSD.org, cracauer@FreeBSD.org, Martin Cracauer <cracauer@cons.org> Subject: Re: infinite loop when copying to ext2fs Message-ID: <20080616121609.GA26978@cons.org> In-Reply-To: <48563219.9070306@FreeBSD.org> References: <20080118120140.2a8170a0@dev> <47921931.9050606@FreeBSD.org> <47921AE2.1060004@FreeBSD.org> <20080301220924.72bf355d@dev.citybikes.cz> <47C9C912.1020700@FreeBSD.org> <20080616034258.GA94873@cons.org> <48563219.9070306@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Kris Kennaway wrote on Mon, Jun 16, 2008 at 11:27:53AM +0200: > Martin Cracauer wrote: > >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 <kris@FreeBSD.org> 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 > > It is amd64 only. I am able to reproduce using the method in the > original mails, can you? Didn't try yet, but I did get a probably unrelated panic on ext2fs just last week :-) I'll fire it up this week. How big does the partition have to be to show the problem in this bug? Martin -- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Martin Cracauer <cracauer@cons.org> http://www.cons.org/cracauer/ FreeBSD - where you want to go, today. http://www.freebsd.org/
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080616121609.GA26978>