I was trying to test DMA using ruby_mem_test.py and noticed that the following command:
./build/X86/gem5.opt configs/example/ruby_mem_test.py --num-dmas 1 throws the error: AttributeError: object 'MemTest' has no attribute 'test' (C++ object is not yet constructed, so wrapped C++ methods are unavailable.) At: build/X86/python/m5/SimObject.py(851): __getattr__ configs/example/ruby_mem_test.py(137): <module> build/X86/python/m5/main.py(589): main So, I looked at the MemTest.py object file and tried the next best thing, replacing ".test" by ".port" as port was defined as a RequestPort and there was no "test" member variable. Is this a valid error? Also, when I run again with dma.port instead of dma.test on line ruby_mem_test.py:137, the test seems to run only to say that dma isn't working correctly: build/X86/cpu/testers/memtest/memtest.cc:162: panic: system.dma_devices: read of 105e01 (blk 105e00) @ cycle 5199 returns 0, expected fc Memory Usage: 771852 KBytes Program aborted at tick 5199 --- BEGIN LIBC BACKTRACE -- I still don't exactly understand what is going on exactly.. I think that the right kind of object might not be getting set as a parameter in dma_ports for create_system. On the other hand, this test was for MESI_Two_Level for which DMA should be working as it boots up in Full System mode. Thanks, Gautam
_______________________________________________ gem5-users mailing list -- gem5-users@gem5.org To unsubscribe send an email to gem5-users-le...@gem5.org