[RFC][PATCH] block: enable by default support for large devices and files on 32-bit archs

From: Bartlomiej Zolnierkiewicz
Date: Sat Mar 28 2009 - 14:17:06 EST



Enable by default support for large devices and files (CONFIG_LBD):

- With 1TB disks being a commodity hardware it is quite easy to hit 2TB
limitation while building RAIDs etc. and many distros have been using
CONFIG_LBD=y by default already (at least Fedora 10 and openSUSE 11.1).

- This should also prevent a subtle ext4 filesystem compatibility issue:
mke2fs.ext4 defaults to creating filesystems with huge_files feature
enabled and such filesystems cannot be later mounted read-write on
machines with CONFIG_LBD=n (it should be quite easy to hit this issue
when trying to use filesystem created using distro kernel on system
running the self-build kernel, think about USB disk enclosures & co.).

While at it:

- Clarify config option help text w.r.t. mounting ext4 filesystems
(they can be mounted with CONFIG_LBD=n but in the read-only mode).

Cc: "Theodore Ts'o" <tytso@xxxxxxx>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@xxxxxxxxx>
---
Unfortunately to also update the existings [def]configs the config option
rename would be needed. Actually, since the performance impact and kernel
size increase seem to be minimal (at least on x86-32) maybe we should just
go ahead and remove CONFIG_LBD (== always use 64-bit sector_t/blkcnt_t)?

I can make needed changes once there is agreement on preferred approach...

block/Kconfig | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)

Index: b/block/Kconfig
===================================================================
--- a/block/Kconfig
+++ b/block/Kconfig
@@ -26,6 +26,7 @@ if BLOCK
config LBD
bool "Support for large block devices and files"
depends on !64BIT
+ default y
help
Enable block devices or files of size 2TB and larger.

@@ -38,11 +39,13 @@ config LBD

The ext4 filesystem requires that this feature be enabled in
order to support filesystems that have the huge_file feature
- enabled. Otherwise, it will refuse to mount any filesystems
- that use the huge_file feature, which is enabled by default
- by mke2fs.ext4. The GFS2 filesystem also requires this feature.
+ enabled. Otherwise, it will refuse to mount in the read-write
+ mode any filesystems that use the huge_file feature, which is
+ enabled by default by mke2fs.ext4.

- If unsure, say N.
+ The GFS2 filesystem also requires this feature.
+
+ If unsure, say Y.

config BLK_DEV_IO_TRACE
bool "Support for tracing block io actions"
--
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/