max block size

max block size

Post by p » Wed, 05 Mar 2003 22:54:01



Is it possible in any way to create a filesystem on Linux with 8192
bytes blocksize ? I have tried several file systems (JFS, XFS,
ReiserFS, ext2, ext3), but none of them seems to be able to handle 8K
blocksizes. With XFS it is possible to create a new fs with 8K bs, but
the OS will not mount it (wrong superblock or too many mounted
filesystems error message).

Is it a kernel or architecture limitation ?

Is there any kernel patch or something which takes away this
limitation.

[It would be nice to have a filesystem with 8K block size, cause our
Progress db and app needs such fs under it for the best performance.]

Thanks in advance ...

 
 
 

max block size

Post by Bill Marcu » Thu, 06 Mar 2003 01:42:26


On 4 Mar 2003 05:54:01 -0800, pH

> Is it possible in any way to create a filesystem on Linux with 8192
> bytes blocksize ? I have tried several file systems (JFS, XFS,
> ReiserFS, ext2, ext3), but none of them seems to be able to handle 8K
> blocksizes. With XFS it is possible to create a new fs with 8K bs, but
> the OS will not mount it (wrong superblock or too many mounted
> filesystems error message).

> Is it a kernel or architecture limitation ?

> Is there any kernel patch or something which takes away this
> limitation.

> [It would be nice to have a filesystem with 8K block size, cause our
> Progress db and app needs such fs under it for the best performance.]

Maybe fat16 or fat32, depending on the size of the database.  Or, I don't
know Progress, but some databases can use a partition with no filesystem.

 
 
 

max block size

Post by Kenneth A Kauffma » Sat, 08 Mar 2003 05:23:44


Should be supported.   fdisk will create it and EXT3 does support it.  I'd
use EXT3 since its journalled compared to EXT2.  I had no problems on RH


Quote:> Is it possible in any way to create a filesystem on Linux with 8192
> bytes blocksize ? I have tried several file systems (JFS, XFS,
> ReiserFS, ext2, ext3), but none of them seems to be able to handle 8K
> blocksizes. With XFS it is possible to create a new fs with 8K bs, but
> the OS will not mount it (wrong superblock or too many mounted
> filesystems error message).

> Is it a kernel or architecture limitation ?

> Is there any kernel patch or something which takes away this
> limitation.

> [It would be nice to have a filesystem with 8K block size, cause our
> Progress db and app needs such fs under it for the best performance.]

> Thanks in advance ...

 
 
 

1. Size max files based on memory size

Hi,

The default files_max settings of 8192 is rather low for many workloads.
This patch changes it to be sized based on the available memory.  It assumes
file + inode + dentry are roughly 1K and will use upto 10% of the available
memory for files_max.

Also removes two obsolete prototypes in the include file.

Patch for 2.5.3.  Please consider applying.

Thanks,
-Andi

--- linux-2.5.3-work/fs/dcache.c-FILESSZ        Tue Jan 15 17:53:31 2002

        dcache_init(mempages);
        inode_init(mempages);
+       files_init(mempages);
        mnt_init(mempages);
        bdev_cache_init();
        cdev_cache_init();
--- linux-2.5.3-work/fs/file_table.c-FILESSZ    Mon Sep 17 22:16:30 2001

        file_list_unlock();
        return 0;
 }
+
+void __init files_init(unsigned long mempages)
+{
+       int n;
+       /* One file with associated inode and dcache is very roughly 1K.
+        * Per default don't use more than 10% of our memory for files.
+        */
+
+       n = (mempages * (PAGE_SIZE / 1024)) / 10;
+       files_stat.max_files = n;
+       if (files_stat.max_files < NR_FILE)
+               files_stat.max_files = NR_FILE;
+}
+
--- linux-2.5.3-work/include/linux/fs.h-FILESSZ Wed Jan 30 22:43:34 2002

 extern void buffer_init(unsigned long);
 extern void inode_init(unsigned long);
 extern void mnt_init(unsigned long);
+extern void files_init(unsigned long);

 /* bh state bits */

        }
        return 0;
 }
-unsigned long generate_cluster(kdev_t, int b[], int);
-unsigned long generate_cluster_swab32(kdev_t, int b[], int);
 extern kdev_t ROOT_DEV;
 extern char root_device_name[];

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in

More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

2. Solaris uiomove() inefficient?

3. EXT2: Defualt block-size & super-block pos.

4. fdisk trouble with SCSI drive

5. SCO tar error on block size (not block factor)

6. Support for ANVIL STALLION 8port cards?

7. Finding the block size of a file on tape - block.c (0/1)

8. Sunos 4.1.3 passwd migration

9. Does TRU-64 support devices with block sizes > 512 bytes/block ?

10. block size vs. blocking factor

11. OS buffer size and block size?

12. Max # of pages in block I/O Buffer Cache

13. Non blocking socket blocks; says 'read would block' ?