public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Ryan CHEN <ryan.chen@st.com>
To: u-boot@lists.denx.de
Subject: [U-Boot-Users] PATCH: Update U-Boot EXT2 Filesystem to support dynamic inode size and optimize ext2 read function to fasten read speed!
Date: Wed, 30 Jul 2008 09:37:08 +0800	[thread overview]
Message-ID: <008401c8f1e4$c8249fa0$30065e0a@SHZ.ST.COM> (raw)
In-Reply-To: <20080729201056.GB8569@ld0162-tx32.am.freescale.net>

Hi Scott,
For sure, the modification will increase code size, but I think it is
reasonable. 
1. Make U-Boot could support the EXT2 dynamic version that ext2_inode_size
beyond 128bytes.
According to Linux kernel source code, now EXT2 filesystem could support two
revision:
    EXT2_GOOD_OLD_REV
    EXT2_DYNAMIC_REV
ext2_inode_size be fixed as 128bytes in the first revision while it could
beyond 128bytes in another revision. In the past, the first revision is the
default option for mkfs.ext2 command. But now there are some OSes like
Mandriva Linux 2008.1 for STLS want to use new revision option to format
disk. I have tested it and our current U-Boot couldn't support it. So I
think it is time to do it.

2. Make EXT2 read more fast.
I have tested our U-Boot to access EXT2 filesystem on USB disk. It's quite
slow and it takes about 200 seconds to read a file that its size is 8MB. Our
USB host controller is NEC upd720101 OHCI host controller and operation mode
is 'bulk'. I think its width is enough. I have analyzed our ext2fs.c file
and found it only read 4KB(512B/block * 8blocks, I format EXT2 filesystem
with default options) once time. One time is a USB timing slot - 100ms. So
it is so slow. 
Now I mainly modified ext2fs_read_block() function to detect how many
seriate blocks and read them in one time. The modification fasten read
opertion a lot especially big file.

Best Regards,
Ryan Chen
-----Original Message-----
From: Scott Wood [mailto:scottwood at freescale.com] 
Sent: Wednesday, July 30, 2008 4:11 AM
To: Ryan CHEN
Cc: u-boot-users at lists.sourceforge.net; Antonio Maria BORNEO
Subject: Re: [U-Boot-Users] PATCH: Update U-Boot EXT2 Filesystem to support
dynamic inode size and optimize ext2 read function to fasten read speed!

On Tue, Jul 29, 2008 at 04:48:51PM +0800, Ryan CHEN wrote:
> Description:
> The patch updates /fs/ext2/ext2fs.c file. There are two aims:
> 1. Make U-Boot could support the EXT2 dynamic version that ext2_inode_size
beyond 128bytes.
>     One new feature be involved: CFG_EXT2_SUPPORT_DYNAMIC_REV
>     Refer to: linux-2.6.24.3 source code.
> 2. Make EXT2 read more fast.
>     One new feature be involved: CFG_OPTIMIZE_EXT2_READ

Does it significantly increase code size, or is there any other reason why
these need to be conditionalized?

-Scott

  reply	other threads:[~2008-07-30  1:37 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-29  8:48 [U-Boot-Users] PATCH: Update U-Boot EXT2 Filesystem to support dynamic inode size and optimize ext2 read function to fasten read speed! Ryan CHEN
2008-07-29 20:10 ` Scott Wood
2008-07-30  1:37   ` Ryan CHEN [this message]
2008-07-29 23:16 ` Wolfgang Denk
2008-07-30  2:00   ` Ryan CHEN
2008-08-01  9:44     ` Detlev Zundel
2008-08-18 21:58     ` [U-Boot] " Wolfgang Denk

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='008401c8f1e4$c8249fa0$30065e0a@SHZ.ST.COM' \
    --to=ryan.chen@st.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox