On 04/01/2011 11:26 AM, Lukas Czerner wrote:
On Thu, 31 Mar 2011, Eric Sandeen wrote:
On 3/31/11 5:21 PM, Andreas Dilger wrote:
We have a kernel patch "dev_read_only" that we use with Lustre to
disable writes to the block device while the device is in use. This
allows simulating crashes at arbitrary points in the code or test
scripts. It was based on Andrew Morton's test harness that he used
for ext3 recovery testing back when it was being ported to the 2.4
kernel.
http://git.whamcloud.com/?p=fs/lustre-release.git;a=blob_plain;f=lustre/kernel_patches/patches/dev_read_only-2.6.32-rhel6.patch;hb=HEAD
The best part of this patch is that it works with any block device,
can simulate power failure w/o any need for automated power control,
and once the block device is unused (all buffers and references
dropped) it can be re-activated safely.
It won't simulate a lost write cache though, will it?
That's a very good question, I would like to know if there is any way at
all to force the device to drop the write cache. That would really help
the power failure testing filesystems.
-Lukas
Write cache behavior can be really mysterious. Small writes (say single 4K
blocks) might stay in cache and not get written for a very long time while
large, streaming writes might bypass the write cache entirely.
It would be neat to be able to simulate these odd things for failure testing :)
Ric
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html