On Tue, 2006-10-10 at 11:55 +0200, Gabor Gombas wrote: > On Mon, Oct 09, 2006 at 12:32:00PM -0400, Doug Ledford wrote: > > > You don't really need to. After a clean install, the operating system > > has no business reading any block it didn't write to during the install > > unless you are just reading disk blocks for the fun of it. > > What happens if you have a crash, and fsck for some reason tries to read > into that uninitialized area? This may happen even years after the > install if the array was never resynced and the filesystem was never > 100% full... What happens, if fsck tries to read the same area twice but > gets different data, because the second time the read went to a > different disk? > > And yes, fsck is exactly an application that reads blocks just "for the > fun of it" when it tries to find all the pieces of the filesystem, esp. > for filesystems that (unlike e.g. ext3) do not keep metadata at fixed > locations. Not at all true. Every filesystem, no matter where it stores its metadata blocks, still writes to every single metadata block it allocates to initialize that metadata block. The same is true for directory blocks...they are created with a . and .. entry and nothing else. What exactly do you think mke2fs is doing when it's writing out the inode groups, block groups, bitmaps, etc.? Every metadata block needed by fsck is written either during mkfs or during use as the filesystem data is grown. So, like my original email said, fsck has no business reading any block that hasn't been written to either by the install or since the install when the filesystem was filled up more. It certainly does *not* read blocks just for the fun of it, nor does it rely on anything the filesystem didn't specifically write. -- Doug Ledford <dledford@xxxxxxxxxx> GPG KeyID: CFBFF194 http://people.redhat.com/dledford Infiniband specific RPMs available at http://people.redhat.com/dledford/Infiniband
Attachment:
signature.asc
Description: This is a digitally signed message part