* ext2 large block size > page size @ 2011-03-29 11:52 Mason 2011-04-01 14:13 ` Mason 2011-04-01 14:49 ` Ted Ts'o 0 siblings, 2 replies; 5+ messages in thread From: Mason @ 2011-03-29 11:52 UTC (permalink / raw) To: linux-fsdevel Hello everyone, As far as I can tell from a quick Google search, there was a push in 2007 to add support for large blocks in some file-systems, in particular ext2. e.g. cf. http://lwn.net/Articles/239090/ Was this ever accepted into the main line? (It seems to have lived within -mm for a while) A few years later, I'm trying to mount a HDD which was ext2-formatted with 32k blocks. And mount is failing (with a strange "block size too small" error message). I'm trying this in Fedora 14 2.6.35.6 kernel 1.41.12 e2fsprogs Is the support for large blocks in ext2 not compiled in this generic kernel ? Or was the patch never accepted ? I'm working with a ST Microelectronics set-top box. Here are a few performance results for a 2TB USB HDD: block size 4k : format = 151 s / mount = 242 s block size 8k : format = 52 s / mount = 71 s block size 16k : format = 30 s / mount = 36 s block size 32k : format = 18 s / mount = 19 s Using 4kB blocks makes mount too slow on the STB, which is why I'd like to use larger blocks. It would be nice if the movies recorded on the STB could also be read on a Linux PC. -- Regards. ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: ext2 large block size > page size 2011-03-29 11:52 ext2 large block size > page size Mason @ 2011-04-01 14:13 ` Mason 2011-04-01 14:49 ` Ted Ts'o 1 sibling, 0 replies; 5+ messages in thread From: Mason @ 2011-04-01 14:13 UTC (permalink / raw) To: linux-fsdevel, linux-kernel; +Cc: clameter, hch Hello again, Mason wrote: > As far as I can tell from a quick Google search, > there was a push in 2007 to add support for large > blocks in some file-systems, in particular ext2. > > e.g. cf. http://lwn.net/Articles/239090/ The page above describes one of the proposed patch, and the following article by Jonathan Corbet gives an overview of the issues. http://lwn.net/Articles/232757/ > Was this ever accepted into the main line? > (It seems to have lived within -mm for a while) > > A few years later, I'm trying to mount a HDD > which was ext2-formatted with 32k blocks. > > And mount is failing (with a strange "block size > too small" error message). > > I'm trying this in Fedora 14 > 2.6.35.6 kernel > 1.41.12 e2fsprogs To add insult to injury, Ext2Fsd(*) an ext2 IFS (Installable File System) for Windows, accepts large-block ext2 partitions. (*) http://www.ext2fsd.com/ > Is the support for large blocks in ext2 not compiled in > this generic kernel ? Or was the patch never accepted ? > > I'm working with a ST Microelectronics set-top box. > Here are a few performance results for a 2TB USB HDD: > block size 4k : format = 151 s / mount = 242 s > block size 8k : format = 52 s / mount = 71 s > block size 16k : format = 30 s / mount = 36 s > block size 32k : format = 18 s / mount = 19 s > > Using 4kB blocks makes mount too slow on the STB, which > is why I'd like to use larger blocks. It would be nice > if the movies recorded on the STB could also be read on > a Linux PC. Is there, perhaps, a better place to discuss this issue? -- Regards, Mason ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: ext2 large block size > page size 2011-03-29 11:52 ext2 large block size > page size Mason 2011-04-01 14:13 ` Mason @ 2011-04-01 14:49 ` Ted Ts'o 2011-04-01 15:53 ` Mason 1 sibling, 1 reply; 5+ messages in thread From: Ted Ts'o @ 2011-04-01 14:49 UTC (permalink / raw) To: Mason; +Cc: linux-fsdevel On Tue, Mar 29, 2011 at 01:52:38PM +0200, Mason wrote: > Hello everyone, > > As far as I can tell from a quick Google search, > there was a push in 2007 to add support for large > blocks in some file-systems, in particular ext2. > > e.g. cf. http://lwn.net/Articles/239090/ > > Was this ever accepted into the main line? > (It seems to have lived within -mm for a while) Nope, it never was (as you've by now figured out). > I'm working with a ST Microelectronics set-top box. > Here are a few performance results for a 2TB USB HDD: > block size 4k : format = 151 s / mount = 242 s > block size 8k : format = 52 s / mount = 71 s > block size 16k : format = 30 s / mount = 36 s > block size 32k : format = 18 s / mount = 19 s > > Using 4kB blocks makes mount too slow on the STB, which > is why I'd like to use larger blocks. It would be nice > if the movies recorded on the STB could also be read on > a Linux PC. My guess is the mount time slowness is caused an ancient kernel running on the ST Microelectronics box which is doing mount-time sanity checks. You can disable this with the mount option -o nocheck. A lot of the rationale for larger block sizes was obviated by the use of more advanced file systems, such as ext4, which have other methods of dealing with the inefficiencies caused by smaller block sizes. If your main complaint with using a 4k block size on the set-top box was the mount-time slowness, that can be fixed with the nocheck mount option. Regards, - Ted ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: ext2 large block size > page size 2011-04-01 14:49 ` Ted Ts'o @ 2011-04-01 15:53 ` Mason 2011-04-01 16:29 ` Christoph Lameter 0 siblings, 1 reply; 5+ messages in thread From: Mason @ 2011-04-01 15:53 UTC (permalink / raw) To: Ted Ts'o; +Cc: linux-fsdevel, cl [ Adding Christoph Lameter to the CC list ] Hello Ted, Ted Ts'o wrote: > On Tue, Mar 29, 2011 at 01:52:38PM +0200, Mason wrote: > >> As far as I can tell from a quick Google search, >> there was a push in 2007 to add support for large >> blocks in some file-systems, in particular ext2. >> >> e.g. cf. http://lwn.net/Articles/239090/ >> >> Was this ever accepted into the main line? >> (It seems to have lived within -mm for a while) > > Nope, it never was (as you've by now figured out). > >> I'm working with a ST Microelectronics set-top box. >> Here are a few performance results for a 2TB USB HDD: >> block size 4k : format = 151 s / mount = 242 s >> block size 8k : format = 52 s / mount = 71 s >> block size 16k : format = 30 s / mount = 36 s >> block size 32k : format = 18 s / mount = 19 s >> >> Using 4kB blocks makes mount too slow on the STB, which >> is why I'd like to use larger blocks. It would be nice >> if the movies recorded on the STB could also be read on >> a Linux PC. > > My guess is the mount time slowness is caused an ancient kernel > running on the ST Microelectronics box which is doing mount-time > sanity checks. You can disable this with the mount option -o nocheck. Unfortunately, the operating system of the set-top box is not Linux (ST has only very recently started migrating to Linux). Their "legacy" OS (OS+ running on top of OS21) provides (proprietary, I suppose) implementations of FAT32 and ext2. I used to create FAT32 partitions, until I plugged a 2-TB USB HDD in the STB: format = 123 s mount = 62 s fsck = 517 s (!!) I switched to ext2, hoping to avoid the need to fsck, thanks to the soft updates mode. Problem is, I can't read the files on a Linux PC if I use large blocks, and performance takes a dive if I use "normal" blocks. > A lot of the rationale for larger block sizes was obviated by the use > of more advanced file systems, such as ext4, which have other methods > of dealing with the inefficiencies caused by smaller block sizes. If > your main complaint with using a 4k block size on the set-top box was > the mount-time slowness, that can be fixed with the nocheck mount > option. Unfortunately, the mount function in this OS accepts only two flags: RDONLY and RDWR :-( If I understand correctly, I'm screwed, right? :-) -- Regards. ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: ext2 large block size > page size 2011-04-01 15:53 ` Mason @ 2011-04-01 16:29 ` Christoph Lameter 0 siblings, 0 replies; 5+ messages in thread From: Christoph Lameter @ 2011-04-01 16:29 UTC (permalink / raw) To: Mason; +Cc: Ted Ts'o, linux-fsdevel On Fri, 1 Apr 2011, Mason wrote: > > > Was this ever accepted into the main line? > > > (It seems to have lived within -mm for a while) > > > > Nope, it never was (as you've by now figured out). I was not able to get the base patchset in that allowed the page cache to work with different page sizes. Reason given was that the functionality that this was used for would never have a chance to be accepted. > > A lot of the rationale for larger block sizes was obviated by the use > > of more advanced file systems, such as ext4, which have other methods > > of dealing with the inefficiencies caused by smaller block sizes. If > > your main complaint with using a 4k block size on the set-top box was > > the mount-time slowness, that can be fixed with the nocheck mount > > option. The rationale for the large block size patchset was to avoid having to handle small 4k chunks both in the hardware and the OS paths. That rationale is still there. The fixes to file systems address meta data issues at a higher level. What you can do on the page level (and what we have done) is basically improve locking but that will at some point no longer be enough since the I/O sizes keep on increasing. At some point we need to be able to handle larger physical chunks. Andrea's work in getting THP committed to the kernel lays some more groundwork for future possibilities. We could f.e. have a base 2M page size for the page cache at some point (some form of my patches to allow the page cache to function with different orders are required though). With larger sizes also come fragmentation issues. We have continually added more means to handle defragmentation do compaction. At some point we should be able to handle larger contiguous blocks and be able to implement larger block sizes. ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2011-04-01 16:36 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2011-03-29 11:52 ext2 large block size > page size Mason 2011-04-01 14:13 ` Mason 2011-04-01 14:49 ` Ted Ts'o 2011-04-01 15:53 ` Mason 2011-04-01 16:29 ` Christoph Lameter
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).