mirror of https://gitee.com/openkylin/linux.git
Get rid of CONFIG_LSF
We have two seperate config entries for large devices/files. One is CONFIG_LBD that guards just the devices, the other is CONFIG_LSF that handles large files. This doesn't make a lot of sense, you typically want both or none. So get rid of CONFIG_LSF and change CONFIG_LBD wording to indicate that it covers both. Acked-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
This commit is contained in:
parent
3c18ce71af
commit
b3a6ffe16b
|
@ -24,21 +24,17 @@ menuconfig BLOCK
|
||||||
if BLOCK
|
if BLOCK
|
||||||
|
|
||||||
config LBD
|
config LBD
|
||||||
bool "Support for Large Block Devices"
|
bool "Support for large block devices and files"
|
||||||
depends on !64BIT
|
depends on !64BIT
|
||||||
help
|
help
|
||||||
Enable block devices of size 2TB and larger.
|
Enable block devices or files of size 2TB and larger.
|
||||||
|
|
||||||
This option is required to support the full capacity of large
|
This option is required to support the full capacity of large
|
||||||
(2TB+) block devices, including RAID, disk, Network Block Device,
|
(2TB+) block devices, including RAID, disk, Network Block Device,
|
||||||
Logical Volume Manager (LVM) and loopback.
|
Logical Volume Manager (LVM) and loopback.
|
||||||
|
|
||||||
For example, RAID devices are frequently bigger than the capacity
|
This option also enables support for single files larger than
|
||||||
of the largest individual hard drive.
|
2TB.
|
||||||
|
|
||||||
This option is not required if you have individual disk drives
|
|
||||||
which total 2TB+ and you are not aggregating the capacity into
|
|
||||||
a large block device (e.g. using RAID or LVM).
|
|
||||||
|
|
||||||
If unsure, say N.
|
If unsure, say N.
|
||||||
|
|
||||||
|
@ -58,15 +54,6 @@ config BLK_DEV_IO_TRACE
|
||||||
|
|
||||||
If unsure, say N.
|
If unsure, say N.
|
||||||
|
|
||||||
config LSF
|
|
||||||
bool "Support for Large Single Files"
|
|
||||||
depends on !64BIT
|
|
||||||
help
|
|
||||||
Say Y here if you want to be able to handle very large files (2TB
|
|
||||||
and larger), otherwise say N.
|
|
||||||
|
|
||||||
If unsure, say Y.
|
|
||||||
|
|
||||||
config BLK_DEV_BSG
|
config BLK_DEV_BSG
|
||||||
bool "Block layer SG support v4 (EXPERIMENTAL)"
|
bool "Block layer SG support v4 (EXPERIMENTAL)"
|
||||||
depends on EXPERIMENTAL
|
depends on EXPERIMENTAL
|
||||||
|
|
|
@ -1721,7 +1721,7 @@ static loff_t ext4_max_size(int blkbits, int has_huge_files)
|
||||||
/* small i_blocks in vfs inode? */
|
/* small i_blocks in vfs inode? */
|
||||||
if (!has_huge_files || sizeof(blkcnt_t) < sizeof(u64)) {
|
if (!has_huge_files || sizeof(blkcnt_t) < sizeof(u64)) {
|
||||||
/*
|
/*
|
||||||
* CONFIG_LSF is not enabled implies the inode
|
* CONFIG_LBD is not enabled implies the inode
|
||||||
* i_block represent total blocks in 512 bytes
|
* i_block represent total blocks in 512 bytes
|
||||||
* 32 == size of vfs inode i_blocks * 8
|
* 32 == size of vfs inode i_blocks * 8
|
||||||
*/
|
*/
|
||||||
|
@ -1764,7 +1764,7 @@ static loff_t ext4_max_bitmap_size(int bits, int has_huge_files)
|
||||||
|
|
||||||
if (!has_huge_files || sizeof(blkcnt_t) < sizeof(u64)) {
|
if (!has_huge_files || sizeof(blkcnt_t) < sizeof(u64)) {
|
||||||
/*
|
/*
|
||||||
* !has_huge_files or CONFIG_LSF is not enabled
|
* !has_huge_files or CONFIG_LBD is not enabled
|
||||||
* implies the inode i_block represent total blocks in
|
* implies the inode i_block represent total blocks in
|
||||||
* 512 bytes 32 == size of vfs inode i_blocks * 8
|
* 512 bytes 32 == size of vfs inode i_blocks * 8
|
||||||
*/
|
*/
|
||||||
|
@ -2021,13 +2021,13 @@ static int ext4_fill_super(struct super_block *sb, void *data, int silent)
|
||||||
if (has_huge_files) {
|
if (has_huge_files) {
|
||||||
/*
|
/*
|
||||||
* Large file size enabled file system can only be
|
* Large file size enabled file system can only be
|
||||||
* mount if kernel is build with CONFIG_LSF
|
* mount if kernel is build with CONFIG_LBD
|
||||||
*/
|
*/
|
||||||
if (sizeof(root->i_blocks) < sizeof(u64) &&
|
if (sizeof(root->i_blocks) < sizeof(u64) &&
|
||||||
!(sb->s_flags & MS_RDONLY)) {
|
!(sb->s_flags & MS_RDONLY)) {
|
||||||
printk(KERN_ERR "EXT4-fs: %s: Filesystem with huge "
|
printk(KERN_ERR "EXT4-fs: %s: Filesystem with huge "
|
||||||
"files cannot be mounted read-write "
|
"files cannot be mounted read-write "
|
||||||
"without CONFIG_LSF.\n", sb->s_id);
|
"without CONFIG_LBD.\n", sb->s_id);
|
||||||
goto failed_mount;
|
goto failed_mount;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -135,19 +135,14 @@ typedef __s64 int64_t;
|
||||||
*
|
*
|
||||||
* Linux always considers sectors to be 512 bytes long independently
|
* Linux always considers sectors to be 512 bytes long independently
|
||||||
* of the devices real block size.
|
* of the devices real block size.
|
||||||
|
*
|
||||||
|
* blkcnt_t is the type of the inode's block count.
|
||||||
*/
|
*/
|
||||||
#ifdef CONFIG_LBD
|
#ifdef CONFIG_LBD
|
||||||
typedef u64 sector_t;
|
typedef u64 sector_t;
|
||||||
#else
|
|
||||||
typedef unsigned long sector_t;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
|
||||||
* The type of the inode's block count.
|
|
||||||
*/
|
|
||||||
#ifdef CONFIG_LSF
|
|
||||||
typedef u64 blkcnt_t;
|
typedef u64 blkcnt_t;
|
||||||
#else
|
#else
|
||||||
|
typedef unsigned long sector_t;
|
||||||
typedef unsigned long blkcnt_t;
|
typedef unsigned long blkcnt_t;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue