I committed a change recently that replaced connectMemPorts with a small group of functions, the main one being connectAllPorts. The fact that fs.py doesn't refer to it makes me think you're using a copy of fs.py and not the original script. My changeset is here:

http://repo.m5sim.org/m5/rev/189b9b258779

And the file is here:

http://repo.m5sim.org/m5/file/189b9b258779/configs/example/fs.py

I verified that the regressions worked and tried a few other things, but it's quite possible I missed something. These scripts do a lot, not all of which I know how to use. Could you try using the updated fs.py and see if that works? And if not could you roll back to before my change and see if the original fs.py used to work? Basically I'd like to see if fs.py has been broken, if I broke it recently, or if your local copy is just out of date.

Gabe

Quoting Richard Strong <[email protected]>:

Hi all,

I was trying to boot a dual system configuration with fs.py to run
StandardSurge and it fails. The first failuire was caused by the line in
fs.py:drive_sys.cpu.
connectMemPorts(drive_sys.membus). There was no function connectMemPorts in
BaseCPU.py. I think I resolved this problem by changing it to
connectAllPorts. The simulation gets a little further when the drive system
fails with the output shown below M5 Output. I provide a trace of
Exec,Cache,Bus for the drive_sys below which indicates that the failure was
caused by an attempted access by the drive_sys to address 0xfffff00188. The
only other reference to this problem is seen in
http://www.mail-archive.com/[email protected]/msg01082.htmlwhere
a user was attempting to implement a new device in the system. I also
provide the kernel output for the drive_sys under the heading "Kernel
Output". My guess is that this code hasn't been tested for a while as the
python script fails or it is tested with a script other than fs.py. If
anyone is able to successfully runch StandardSurge and SpecSurge using
fs.py,  has an idea of what is going wrong, or some debugging suggestions, I
am all ears.

Thanks,
-Rick


M5 Output
command line: /home/rstrong/build/m5-idle/build/ALPHA_FS/m5.opt
configs/example/fs.py --benchmark=SurgeStandard
maxtick= 9223372036854775807
Global frequency set at 1000000000000 ticks per second
info: kernel located at: /home/rstrong/dist/m5/system/binaries/vmlinux-m5
Listening for testsys connection on port 3456
      0: testsys.tsunami.io.rtc: Real-time clock set to Thu Jan  1 00:00:00
2009
info: kernel located at: /home/rstrong/dist/m5/system/binaries/vmlinux-m5
Listening for drivesys connection on port 3457
      0: drivesys.tsunami.io.rtc: Real-time clock set to Thu Jan  1 00:00:00
2009
0: testsys.remote_gdb.listener: listening for remote gdb #0 on port 7000
0: drivesys.remote_gdb.listener: listening for remote gdb #1 on port 7001
simulating till maxtick:9223372036854775807
**** REAL SIMULATION ****
info: Entering event queue @ 0.  Starting simulation...
m5.opt: /home/rstrong/build/m5-idle/build/ALPHA_FS/cpu/simple/atomic.cc:347:
Fault AtomicSimpleCPU::readBytes(Addr, uint8_t*, unsigned int, unsigned
int): Assertion `!pkt.isError()' failed.
Program aborted at cycle 96978500
Aborted




--trace-flags=EXEC,Cache,Bus trace:
      0: drivesys.tsunami.io.rtc: Real-time clock set to Thu Jan  1 00:00:00
2009
96968500: drivesys.cpu: Tick
96968500: drivesys.cpu T0 : @sys_machine_check+109    : hw_mtpr
r14,IPR(0x150)  : IprAccess :  D=0x0000009806700009
96969000: drivesys.cpu: Tick
96969000: drivesys.cpu T0 : @sys_machine_check+113    : ldah
r14,-16(r31)    : IntAlu :  D=0xfffffffffff00000
96969500: drivesys.cpu: Tick
96969500: drivesys.cpu T0 : @sys_machine_check+117    : hw_mtpr
r1,IPR(0x141)   : IprAccess :  D=0x0000000010000000
96970000: drivesys.cpu: Tick
96970000: drivesys.cpu T0 : @sys_machine_check+121    : zap
r38,224,r38     : IntAlu :  D=0x000000fffff00000
96970500: drivesys.cpu: Tick
96970500: drivesys.cpu T0 : @sys_machine_check+125    : hw_mtpr
r12,IPR(0x14a)  : IprAccess :  D=0x00000000000042d1
96971000: drivesys.cpu: Tick
96971000: drivesys.cpu T0 : @sys_machine_check+129    : hw_mtpr
r31,IPR(0x119)  : IprAccess :  D=0x0000000000000000
96971500: drivesys.cpu: Tick
96971500: drivesys.cpu T0 : @sys_machine_check+133    : blbs
r37,0x9321      : IntAlu :
96972000: drivesys.cpu: Tick
96972000: drivesys.cpu T0 : @sys_machine_check+137    : hw_mtpr
r6,IPR(0x146)   : IprAccess :  D=0x0000000000000072
96972500: drivesys.cpu: Tick
96972500: drivesys.cpu T0 : @sys_machine_check+141    : hw_mtpr
r5,IPR(0x145)   : IprAccess :  D=0x0000000000000071
96973000: drivesys.cpu: Tick
96973000: drivesys.cpu T0 : @sys_machine_check+145    : hw_mfpr
IPR(0x100),r4   : IprAccess :  D=0x0000000000000000
96973500: drivesys.cpu: Tick
96973500: drivesys.cpu T0 : @sys_machine_check+149    : srl
r4,30,r4        : IntAlu :  D=0x0000000000000000
96974000: drivesys.cpu: Tick
96974000: drivesys.cpu T0 : @sys_machine_check+153    : blbc
r4,0x8f21       : IntAlu :
96974500: drivesys.cpu: Tick
96974500: drivesys.cpu T0 : @sys_mchk_collect_iprs+1    :
mb                         : MemRead :
96975000: drivesys.cpu: Tick
96975000: drivesys.cpu T0 : @sys_mchk_collect_iprs+5    : hw_mfpr
IPR(0x11a),r1   : IprAccess :  D=0x0000000000003800
96975500: drivesys.cpu: Tick
96975500: drivesys.cpu T0 : @sys_mchk_collect_iprs+9    : hw_mfpr
IPR(0x212),r8   : IprAccess :  D=0x0000000000000003
96976000: drivesys.cpu: Tick
96976000: drivesys.cpu T0 : @sys_mchk_collect_iprs+13    : hw_mtpr
r31,IPR(0x210)  : IprAccess :  D=0x0000000000000000
96976500: drivesys.cpu: Tick
96976500: drivesys.cpu T0 : @sys_mchk_collect_iprs+17    : hw_mfpr
IPR(0x140),r31  : IprAccess :  D=0x000000000000005e
96977000: drivesys.cpu: Tick
96977000: drivesys.cpu T0 : @sys_mchk_collect_iprs+21    : hw_mfpr
IPR(0x140),r31  : IprAccess :  D=0x000000000000005e
96977500: drivesys.cpu: Tick
96977500: drivesys.cpu T0 : @sys_mchk_collect_iprs+25    : nop
(bis        r31,r31,r31) : No_OpClass :
96978000: drivesys.cpu: Tick
96978000: drivesys.cpu T0 : @sys_mchk_collect_iprs+29    : nop
(bis        r31,r31,r31) : No_OpClass :
96978500: drivesys.cpu: Tick
96978500: drivesys.membus: recvAtomic: packet src 3 dest -1 addr
0xfffff00188 cmd ReadReq
96978500: drivesys.membus: Unable to find destination for addr 0xfffff00188,
will use default port


Kernel Output:
M5 console: m5AlphaAccess @ 0xFFFFFD0200000000
Got Configuration 623
memsize 10000000 pages 8000
First free page after ROM 0xFFFFFC0000018000
HWRPB 0xFFFFFC0000018000 l1pt 0xFFFFFC0000038000 l2pt 0xFFFFFC000003A000
l3pt_rpb 0xFFFFFC000003C000 l3pt_kernel 0xFFFFFC0000040000 l2reserv
0xFFFFFC000003E000
kstart = 0xFFFFFC0000310000, kend = 0xFFFFFC00007D7438, kentry =
0xFFFFFC0000310000, numCPUs = 0x1
CPU Clock at 2000 MHz IntrClockFrequency=1024
Booting with 1 processor(s)
KSP: 0x20043FE8 PTBR 0x1C
Console Callback at 0x0, fixup at 0x0, crb offset: 0x510
Memory cluster 0 [0 - 392]
Memory cluster 1 [392 - 32376]
Initalizing mdt_bitmap addr 0xFFFFFC0000038000 mem_pages 8000
ConsoleDispatch at virt 10000658 phys 18658 val FFFFFC00000100A8
unix_boot_mem ends at FFFFFC000006E000
k_argc = 0
jumping to kernel at 0xFFFFFC0000310000, (PCBB 0xFFFFFC0000018180 pfn 1004)



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

Reply via email to