public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Nick Piggin <npiggin@suse.de>
To: "Jorge Boncompte [DTI2]" <jorge@dti2.net>
Cc: ext-adrian.hunter@nokia.com, LKML <linux-kernel@vger.kernel.org>
Subject: Re: Error testing ext3 on brd ramdisk
Date: Sat, 28 Feb 2009 06:58:09 +0100	[thread overview]
Message-ID: <20090228055809.GC28496@wotan.suse.de> (raw)
In-Reply-To: <49A82C2E.4030903@dti2.net>

On Fri, Feb 27, 2009 at 07:08:46PM +0100, Jorge Boncompte [DTI2] wrote:
> Adrian Hunter escribió:
> >Hi
> >
> >I am trying to test EXT3 on a ramdisk and after some number of mounts
> >(anywhere from 7 to 603 so far), I get errors from e2fsck like this:
> >
> >/dev/ram0: HTREE directory inode 137 has an invalid root node.
> >HTREE INDEX CLEARED.
> >/dev/ram0: Entry 'f1770' in /work/p0/da/d1c61 (137) has deleted/unused 
> >inode 692.  CLEARED.
> >/dev/ram0: Entry 'fa37' in /work/p0/da/d1c61 (137) has deleted/unused 
> >inode 799.  CLEARED.
> >/dev/ram0: Entry 'c1686' in /work/p0/da/d1c61 (137) has deleted/unused 
> >inode 470.  CLEARED.
> >/dev/ram0: Entry 'c19b8' in /work/p0/da/d1c61 (137) has an incorrect 
> >filetype (was 3, should be 1).
> >
> >/dev/ram0: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
> >      (i.e., without -a or -p options)
> >
> >
> >This is what I do:
> >
> >
> >modprobe brd rd_nr=1 rd_size=4096
> >mkfs.ext3 /dev/ram0
> >dmesg -n8
> >i=0
> >while (true); do
> >    i=`expr $i + 1`
> >    echo -------------------------------------------------------------
> >    echo Cycle $i
> >    date
> >    echo Mounting
> >    sleep 1
> >    mount -t ext3 /dev/ram0 /mnt/test_file_system || exit 1
> >    echo Removing old fsstress data
> >    rm -rf /mnt/test_file_system/work
> >    mkdir /mnt/test_file_system/work || exit 1
> >    echo Starting fsstress
> >    fsstress -d /mnt/test_file_system/work -p 3 -l 0 -n 100000000 &
> >    echo Sleeping 30 seconds
> >    sleep 30
> >    echo Stopping fsstress
> >    while (ps -e | grep fsstress);do
> >        pkill fsstress
> >        sleep 1
> >    done
> >    echo Unmounting
> >    umount /mnt/test_file_system || exit 1
> >    echo Checking
> >    sleep 1
> >    e2fsck -fvp /dev/ram0 || exit 1
> >done
> >
> >
> >It seems to happen ever since the introduction of brd (Feb '08).
> >
> >Does anyone know what is going on?
> >
> 	Hi,
> 
> 	I have added Nick Piggin to the CC: as maintainer of the brd driver.
> 
> 	After switching an embedded distribution that /etc on a ramdisk 
> 	based minix filesystem from 2.6.23.17 to 2.6.29-rcX i am too getting errors 
> ant the filesystem is corrupted. Does not happen always. The visible 
> effect with text files after reboot is getting the old version of the 
> file and "\0"'s at the end.
> 
> 	Did you found a solution?

What architectures are you using? It's possible that brd is missing
a cacheflush. I test it pretty heavily on x86 and no problems, so
this might point to an arch specific problem.

---
 drivers/block/brd.c |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

Index: linux-2.6/drivers/block/brd.c
===================================================================
--- linux-2.6.orig/drivers/block/brd.c
+++ linux-2.6/drivers/block/brd.c
@@ -275,8 +275,10 @@ static int brd_do_bvec(struct brd_device
 	if (rw == READ) {
 		copy_from_brd(mem + off, brd, sector, len);
 		flush_dcache_page(page);
-	} else
+	} else {
+		flush_dcache_page(page);
 		copy_to_brd(brd, mem + off, sector, len);
+	}
 	kunmap_atomic(mem, KM_USER0);
 
 out:

  reply	other threads:[~2009-02-28  5:58 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-11-14 13:25 Error testing ext3 on brd ramdisk Adrian Hunter
2009-02-27 18:08 ` Jorge Boncompte [DTI2]
2009-02-28  5:58   ` Nick Piggin [this message]
2009-03-02 17:42     ` Jorge Boncompte [DTI2]
2009-03-05  6:55       ` Nick Piggin
2009-03-05  9:19         ` Jorge Boncompte [DTI2]
2009-03-05  9:46           ` Nick Piggin
2009-03-05 10:56             ` Jorge Boncompte [DTI2]
2009-03-05 12:12               ` Jorge Boncompte [DTI2]
2009-03-10 16:12                 ` Nick Piggin
2009-03-10 16:30                   ` Nick Piggin
2009-03-10 16:49                     ` Jorge Boncompte [DTI2]
2009-03-11  2:19                       ` Nick Piggin
2009-03-13 17:06                         ` Jorge Boncompte [DTI2]
2009-03-17  9:40                           ` Denis Karpov
2009-03-18 12:11                             ` Nick Piggin
2009-03-18 13:42                               ` Jan Kara
2009-03-20 12:24                                 ` Denis Karpov
2009-03-20 12:49                                   ` Denis Karpov
2009-03-20 13:35                                 ` Denis Karpov
2009-03-05 10:45           ` Nick Piggin
2009-03-05 11:54             ` Jorge Boncompte [DTI2]
2009-03-06  7:47         ` Adrian Hunter
2009-03-10 11:03           ` Nick Piggin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090228055809.GC28496@wotan.suse.de \
    --to=npiggin@suse.de \
    --cc=ext-adrian.hunter@nokia.com \
    --cc=jorge@dti2.net \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox