Re: [patch 0/6][RFC] Cleanup FIBMAP

From: Szabolcs Szakacsits
Date: Sat Oct 27 2007 - 17:58:12 EST



On Sat, 27 Oct 2007, Anton Altaparmakov wrote:

> And another of my pet peeves with ->bmap is that it uses 0 to mean "sparse"
> which causes a conflict on NTFS at least as block zero is part of the $Boot
> system file so it is a real, valid block... NTFS uses -1 to denote sparse
> blocks internally.

In practice, the meaning of 0 is file system [driver] dependent. For
example in case of NTFS-3G it means that the block is sparse or the file is
encrypted or compressed, or resident, or it's the $Boot file, or an error
happened.

Thankfully the widely used FIBMAP users (swapon and the ever less used
lilo) are only interested in the non-zero values and they report an error
if the driver returns 0 for some reason. Which is perfectly ok since both
swaping and Linux booting would fail using a sparse, encrypted, compressed,
resident, or the NTFS $Boot file.

But in real, both swap files and lilo work fine with NTFS if the needed
files were created the way these softwares expect. If not then swapon or
lilo will catch and report the file creation error.

Afair, somebody is doing (has done?) an indeed much needed, better
alternative. Bmap is legacy, thank you Mike for maintaining it.

Szaka

--
NTFS-3G Lead Developer: http://ntfs-3g.org
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/