[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <453849D4.80601@redhat.com>
Date: Thu, 19 Oct 2006 23:00:20 -0500
From: Eric Sandeen <esandeen@...hat.com>
To: Andreas Dilger <adilger@...sterfs.com>
CC: Eric Sandeen <sandeen@...hat.com>,
ext4 development <linux-ext4@...r.kernel.org>
Subject: Re: [PATCH/RFC] - make ext3 more robust in the face of filesystem
corruption
Andreas Dilger wrote:
> On Oct 19, 2006 17:43 -0500, Eric Sandeen wrote:
>> Eric Sandeen wrote:
>>> How about just tweaking the existing ext3_bread so that it lets the
>>> caller know whether or not it found an uptodate buffer? Seems
>>> conceivable that more than just the dir code might want to do a data
>>> sanity check, based on if this is a fresh read or not.
>>>
>>> Could maybe even change the *err argument to a *retval; negative on
>>> errors, else 0 == not read (found uptodate), 1 == fresh read (not found
>>> uptodate). Or is that too much overloading...
>> I played around with this a little bit today, and it seems to have some
>> tangible results. A fairly unsophisticated test of running "find" over
>> my whole root filesystem 10 times :) with and without re-checking cached
>> directory entries, yielded about a 10% speedup when skipping the re-checks.
>>
>> Is this something we want to do? Are we comfortable with only checking
>> directory entries the first time they are read from disk?
>
> Well, we already do this on ext2 without noticable problems. As you say,
> if we are getting memory corruption we are in for a world of hurt in other
> areas. The only case that might be worth checking inside the loop is if
> rec_len == 0, so that we don't spin on a bad entry forever.
Sounds good, I'll whip up a patch; probably one patch first to add the checks &
fix the corruptor tests, and follow up with one to be smarter about the checks
in all cases.
Thanks,
-eric
-
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists