Hi, Ali:

Thanks a lot for your suggestions. I followed your suggestions and M5 webpage: 
Using Mercurial to build connection with the repository, download linux kernels 
and linux patches and following the instructions on page "Using linux-dist to 
Create Disk Images and Kernels for M5" to build the kernel.

I first try kernel 22 for several times, but never successful. Since I am an 
engineer student, something obvious to CS student may not be obvious to me. I 
tried to use patch "patch_to_2.6.22.2.diff" in the folder "stable" and patch 
"defaultconfig_2.6.22.diff" in folder "m5" seperately and use them together, 
but cause several errors. Either the kernel can't be compiled (step 2 of above 
webpage, I have to comment some source code (even not too much) to make it 
compiled) or the linux box can't be compiled ("ptxdist go"  step). I tried it 
for several times, either using different patches or using other version of 
kernel, i.e., kernel 2.6.22.2, but never went through.

For kernel 18, if using patch "defaultconfig_2.6.18.diff" only, it can finish 
all steps on the m5 webpage, but when I load it to m5_2.0.b4 (which I already 
did some work on it), the kernel can't be loaded, it stop at:

PCI: Setting latency timer of device 0000:00:00.0 to 64
    ide0: BM-DMA at 0x8400-0x8407, BIOS settings: hda:DMA, hdb:DMA
    ide1: BM-DMA at 0x8408-0x840f, BIOS settings: hdc:DMA, hdd:DMA

Kernel 13, I believe is the one with m5_2.0.b4 when download (I know it is not 
the most current version, but sicne I already did some work on it, so prefer 
stay on it). When I tried to compile kernel 13, I used  most patches in the 
folder "m5", except those specified for kernel 18 or 22. It went through all 
steps on abobe m5 webpage, but when I loaded it to m5_2.0.b4, it stop at:

PCI: Setting latency timer of device 0000:00:00.0 to 64
    ide0: BM-DMA at 0x8400-0x8407, BIOS settings: hda:DMA, hdb:DMA
    ide1: BM-DMA at 0x8408-0x840f, BIOS settings: hdc:DMA, hdd:DMA
hda: M5 IDE Disk, ATA DISK drive
hdb: M5 IDE Disk, ATA DISK drive
ide0 at 0x8410-0x8417,0x8422 on irq 15
hda: max request size: 128KiB
hda: 409248 sectors (209 MB), CHS=406/16/63, UDMA(33)
hda: cache flushes not supported
 hda:<4>hda: lost interrupt

Do you know what is the reason for that? Also could you let me know what 
patches should I use for different kernel, in what order? Since when I tried 
different patches on each kernel, some make it go through all steps on m5 
webpages, some cause errors uring compiling.

Thanks, and your help is really appreciated.

Jiao

--- On Wed, 10/22/08, Ali Saidi <[EMAIL PROTECTED]> wrote:
From: Ali Saidi <[EMAIL PROTECTED]>
Subject: Re: [m5-users] Create Disk Images and Kernels for M5
To: [EMAIL PROTECTED], "M5 users mailing list" <[email protected]>
Date: Wednesday, October 22, 2008, 1:06 PM

On Oct 22, 2008, at 11:03 AM, jia wang wrote:

> For M5 developper or anyone who can help:
>
> This is Jiao, a student of ECE department of Northeastern Univ., and  
> I am trying to use M5 full system in my research. It is a great tool  
> for our research, but if we can have access to the M5 OS (Linux  
> 2.6.13), that will be much more helpful. I tried to create disk  
> images and kernel for M5 according to the document from M5 main  
> website - "Using linux-dist to Create Disk Images and Kernels for  
> M5", but face the following difficulties:
>
> There are three steps to build up disk images:
>
> (1): compile a cross-compiler capable of building alpha binaries.
>
> In this step, I followed the instructions to use crosstool 0.42,  
> make change to demo-alpha.sh and gcc-3.4.3-glibc-2.3.5.dat. But when  
> I run the demo-alpha.sh to install the cross-compiler, it showed  
> error of "linux-libc-headers-2.6.13.0.tar.bz2 not exist". I went
to  
> the website: ftp://ftp.lfs-matrix.net/pub/linux-libc-headers/ and  
> found the lastest header is linux-libc-headers-2.6.12.0.tar.bz2.  
> Could anybody explain to me what this header is for and where to get  
> the version linux-libc-headers-2.6.13.0.tar.bz2? Since the lastest  
> version is 2.6.12.0, so I just use it for demo-alpha.sh and  
> successfully generate the cross-compiler gcc-3.4.3-glibc-2.3.5.
That should be fine.

>
>
> (2):  compile a kernel using this cross-compiler
>
> For this step, I download kernel linux-2.6.13 and try to use cross- 
> compiler gcc-3.4.3-glibc-2.3.5 to build it using command:
>
> make ARCH=alpha CROSS_COMPILE=/opt/crosstool/gcc-3.4.3-glibc-2.3.5/ 
> alpha-unknown-linux-gnu/bin/alpha-unknown-linux-gnu- vmlinux
> But I got the following errors:
>
> In file included from arch/alpha/kernel/asm-offsets.c:11:
> include/asm/io.h: In function `ioport_map':
> include/asm/io.h:273: warning: implicit declaration of function  
> `__IO_PREFIX_ioportmap'
> include/asm/io.h:273: warning: return makes pointer from integer  
> without a cast
> include/asm/io.h: In function `ioremap':
> include/asm/io.h:282: warning: implicit declaration of function  
> `__IO_PREFIX_ioremap'
> include/asm/io.h:282: warning: return makes pointer from integer  
> without a cast
> include/asm/io.h: In function `iounmap':
> include/asm/io.h:299: warning: implicit declaration of function  
> `__IO_PREFIX_iounmap'
> include/asm/io.h: In function `__is_ioaddr':
> include/asm/io.h:304: warning: implicit declaration of function  
> `__IO_PREFIX_is_ioaddr'
> include/asm/io.h: In function `__is_mmio':
> include/asm/io.h:310: warning: implicit declaration of function  
> `__IO_PREFIX_is_mmio'
> make[1]: *** [arch/alpha/kernel/asm-offsets.s] Error 1
> make: *** [arch/alpha/kernel/asm-offsets.s] Error 2
I don't imagine you configured the kernel or copied the .config.m5  
to .config (assuming you're using our linux-patches repository).

>
>
> Since I use different header in step 1, so I also try the same  
> command on Linux kernel 2.6.12.0, but got the same error. Does that  
> because I use the wrong header in step 1 or because I didn't get the  
> right kernel? If it is kernel probelm, can anyone please let me know  
> where to get the right kernel?
I recommend you get a newer kernel 2.6.18 or 2.6.22 and use the linux  
patches repository on it. Either way the problem current seems to be  
that the kernel wasn't configured, __IO_PREIX should get replaced by  
something like generic_ or tsunami_ if the kernel is configured  
correctly.

Ali




      
_______________________________________________
m5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/m5-users

Reply via email to