[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: JFFS2 (NAND) mount time improvment



On Wed, Sep 08, 2004 at 04:14:10PM +0300, ext Jarkko Lavinen wrote:
>   mkfs.jffs2 -e 128 -l -n  -d foo -o bar
...
> Something is wrong. Did I use correct options to create the image? There

Both kernel configuration and mkfs.jffs2 options were wrong.

The 4 times increase in mount time was due to excessive debugging messages 
slowing down the mount.

The options -C and -N were missing and the icache node was not constructed 
into the image. I reran the mkfs.jffs2 command with -e 128 -l -n -v -N 2048
-C and created a new test fs image. I also enlarged the fs fill ratio to 96% 
to show better the if any.

With plain 2.4.9-rc1-omap1 kernel the mount time is 52s.

With Ferenc's patch the mount time drops to 14s.

With plain 2.4.9-rc1-omap1 the kernel profile head -20 of 52s mount 
looks like:

  4638 omap_nand_read_buf                        50.4130
    67 __delay                                    5.5833
   197 jffs2_get_ino_cache                        2.1413
   114 omap_write_command                         0.9828
    22 omap_nand_calculate_ecc                    0.7857
    12 omap_nand_enable_hwecc                     0.3750
    11 jffs2_add_ino_cache                        0.1058
    18 crc32_le                                   0.0833
    17 jffs2_add_fd_to_list                       0.0773
     4 generate_pseudo_ecc                        0.0625
     3 kmem_cache_alloc                           0.0417
     1 jffs2_alloc_inode_cache                    0.0278
    47 nand_read_ecc                              0.0237
     3 __memzero                                  0.0234
     2 omap_nand_correct_data                     0.0217
     2 kfree                                      0.0152
     8 jffs2_scan_inode_node                      0.0145
     2 __kmalloc                                  0.0139
     1 omap_select_chip                           0.0132
     2 make_coherent                              0.0064


And with Ferenc's patch the profile head of 14s mount looks:

   993 omap_nand_read_buf                        10.7935
    29 __delay                                    2.4167
   185 jffs2_get_ino_cache                        2.0109
    32 omap_write_command                         0.2759
    10 kmem_cache_alloc                           0.1389
     3 omap_nand_enable_hwecc                     0.0938
     9 jffs2_add_ino_cache                        0.0865
    19 jffs2_add_fd_to_list                       0.0864
    18 crc32_le                                   0.0833
     6 omap_select_chip                           0.0789
     2 jffs2_alloc_raw_node_ref                   0.0556
     7 __kmalloc                                  0.0486
     3 generate_pseudo_ecc                        0.0469
     2 __wake_up                                  0.0385
     1 jffs2_alloc_full_dirent                    0.0357
     1 omap_nand_read_byte                        0.0312
     2 nand_release_chip                          0.0238
     3 jffs2_scan_make_ino_cache                  0.0234
     4 nand_get_chip                              0.0217
    38 nand_read_ecc                              0.0192


Jarkko Lavinen

To unsubscribe from this list: send the line "unsubscribe jffs-dev" in
the body of a message to majordomo@xxxxxxx.com