On Fri, 2 Jul 1999 [EMAIL PROTECTED] wrote:

[...]
> * Then I create a file of 16MB made from the kernel and the image of the
> ramdisk, with a gap of 8MB between the two files.

How do you do this, just to be sure I understand well...

> * I load this file in the RAM of my brutus-like board at 0xc0000000. So the the
> kernel is at 0xc0000000 and the ramdisk at 0xc0800000.

What is your ram configuration i.e. mb per bank, etc. ?
How do you load it?
Why isn't the kernel at 0xc0008000 BTW?

> So, in the setup_initrd function should be:   setup_initrd ( 0xc0800000 ,
> 0x7d0000 )
> where 7d0000 is the size of the image of my ramdisk ( 8000 * 1024 ).
> 
> Let me give you an example:
> This the current state of the image of my ramdisk (using 'df')
>      1024 blocks: 7745
>      Used: 6023
>      Available: 1722
> 
> * If I used setup_initrd ( 0xc0800000 , 0x00500000 ) : At the end of the boot,

This is wrong.  df will tell you the amount of space used but there is
absolutely no guaranty that all files are all located at the beginning of
the filesystem.  You really need to specify the exact size (or
more, it doesn't hurt) for your image otherwise anything odd can happen.

Next, ramdisks have a maximum size of 4mb by default.  Be sure you have
the driver set up for 8 mb ramdisks.  This could be achieved with a
command line parameter like "ramdisk=8000" in your case.

And be sure that you have unmounted your image before you copy it over
otherwise some blocks may still be in the buffer cache.

Maybe you could try to gzip your ramdisk image and place the gzipped
version in memory instead of the uncompressed one.  First it will save you
download time and since decompression also checks for CRC you'll be sure
your filesystem hasn't been corrupted in the transfert.


Nicolas Pitre, B. ing.
[EMAIL PROTECTED]


unsubscribe: body of `unsubscribe linux-arm' to [EMAIL PROTECTED]

Reply via email to