Message ID | 1364997099-22590-1-git-send-email-lczerner@redhat.com |
---|---|
State | Changes Requested |
Headers | show |
On Wed, Apr 03, 2013 at 03:51:39PM +0200, Lukas Czerner wrote: > Currently there is nothing preventing user to create file system with > bigalloc feature enabled and block size smaller than 4096 Bytes. However > such combination does not make much sense at all because the whole point > of bigalloc is to have bigger allocation units. > > This patch disallow such combination. This makes sense by default but I do see a point in allowing it for testing purposes --- specifically, it allows us to verify that bigalloc works on architectures such as PowerPC and Itanium where page size is greater than the 4k block size. So maybe a developer mode set via mke2fs.conf? Another option would be to enforce that we only support bigalloc file systems where the blocksize == pagesize, but that means we wouldn't be able to mount 4k bigalloc file systems on architectures with a 8k or 16k page size. - Ted -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, 3 Apr 2013, Theodore Ts'o wrote: > Date: Wed, 3 Apr 2013 10:35:54 -0400 > From: Theodore Ts'o <tytso@mit.edu> > To: Lukas Czerner <lczerner@redhat.com> > Cc: linux-ext4@vger.kernel.org > Subject: Re: [PATCH] mke2fs: Disallow bigalloc with with bs < 4096 > > On Wed, Apr 03, 2013 at 03:51:39PM +0200, Lukas Czerner wrote: > > Currently there is nothing preventing user to create file system with > > bigalloc feature enabled and block size smaller than 4096 Bytes. However > > such combination does not make much sense at all because the whole point > > of bigalloc is to have bigger allocation units. > > > > This patch disallow such combination. > > This makes sense by default but I do see a point in allowing it for > testing purposes --- specifically, it allows us to verify that > bigalloc works on architectures such as PowerPC and Itanium where page > size is greater than the 4k block size. So maybe a developer mode set > via mke2fs.conf? Yes, I though about that and I wanted to know what the general opinion is. I'll prepare the patch which makes this tunable, but restricted by default. > > Another option would be to enforce that we only support bigalloc file > systems where the blocksize == pagesize, but that means we wouldn't be > able to mount 4k bigalloc file systems on architectures with a 8k or > 16k page size. Unfortunately we can't do that for the reasons you mentioned. Thanks! -Lukas > > - Ted > -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/misc/mke2fs.c b/misc/mke2fs.c index bbf477a..1f33a20 100644 --- a/misc/mke2fs.c +++ b/misc/mke2fs.c @@ -1924,6 +1924,12 @@ profile_error: "smaller than the block size.\n")); exit(1); } + if (EXT2_BLOCK_SIZE(&fs_param) < 4096) { + com_err(program_name, 0, + _("Bigalloc feature is not supported with " + "block size smaller than 4096 B")); + exit(1); + } } else if (cluster_size) { com_err(program_name, 0, _("specifying a cluster size requires the "