Hey everyone.

I've been trying to implement a custom simobject but once DMA starts it quickly fails as for an assert.

I don't know why it could happen and would appreciate some ideas. Next you can find some of the gem5 output (with some debug flags enabled):

2007027571000: system.pc.south_bridge.ide.dma: Trying to send WriteReq addr 0xffc0
2007027571000: system.pc.south_bridge.ide.dma: -- Done
2007027571000: system.pc.south_bridge.ide.dma: TransmitList: 0, inRetry: 0
2007027606000: system.pc.south_bridge.ide.dma: Received response WriteReq for addr: 0xfbc0 size: 64 nb: 3008, tot: 4096 sched 0 2007027609000: system.pc.south_bridge.ide.dma: Received response WriteReq for addr: 0xfc00 size: 64 nb: 3072, tot: 4096 sched 0 2007027618000: system.pc.south_bridge.ide.dma: Received response WriteReq for addr: 0xfc40 size: 64 nb: 3136, tot: 4096 sched 0 2007027619000: system.pc.south_bridge.ide.dma: Received response WriteReq for addr: 0xfc80 size: 64 nb: 3200, tot: 4096 sched 0 2007027624000: system.pc.south_bridge.ide.dma: Received response WriteReq for addr: 0xfcc0 size: 64 nb: 3264, tot: 4096 sched 0 2007027629000: system.pc.south_bridge.ide.dma: Received response WriteReq for addr: 0xfd00 size: 64 nb: 3328, tot: 4096 sched 0 2007027634000: system.pc.south_bridge.ide.dma: Received response WriteReq for addr: 0xfd40 size: 64 nb: 3392, tot: 4096 sched 0 2007027639000: system.pc.south_bridge.ide.dma: Received response WriteReq for addr: 0xfd80 size: 64 nb: 3456, tot: 4096 sched 0 2007027644000: system.pc.south_bridge.ide.dma: Received response WriteReq for addr: 0xfdc0 size: 64 nb: 3520, tot: 4096 sched 0 2007027649000: system.pc.south_bridge.ide.dma: Received response WriteReq for addr: 0xfe00 size: 64 nb: 3584, tot: 4096 sched 0 2007027654000: system.pc.south_bridge.ide.dma: Received response WriteReq for addr: 0xfe40 size: 64 nb: 3648, tot: 4096 sched 0 2007027659000: system.pc.south_bridge.ide.dma: Received response WriteReq for addr: 0xfe80 size: 64 nb: 3712, tot: 4096 sched 0 2007027674000: system.pc.south_bridge.ide.dma: Received response WriteReq for addr: 0xfec0 size: 64 nb: 3776, tot: 4096 sched 0 2007027675000: system.pc.south_bridge.ide.dma: Received response WriteReq for addr: 0xff00 size: 64 nb: 3840, tot: 4096 sched 0 2007027701000: system.pc.south_bridge.ide.dma: Received response WriteReq for addr: 0xff40 size: 64 nb: 3904, tot: 4096 sched 0 2007027702000: system.pc.south_bridge.ide.dma: Received response WriteReq for addr: 0xff80 size: 64 nb: 3968, tot: 4096 sched 0 2007027703000: system.pc.south_bridge.ide.dma: Received response WriteReq for addr: 0xffc0 size: 64 nb: 4032, tot: 4096 sched 0 2007027703000: system.pc.south_bridge.ide.disks: DMAW: doDmaWrite: done curPrd byte count 65536, eot 0 2007027703000: system.pc.south_bridge.ide.disks: doWriteDone: curPrd byte count 65536, eot 0 cmd bytes left:4294905856 2007027703000: system.pc.south_bridge.ide.dma: Starting DMA for addr: 0x1e858008 size: 8 sched: 0 2007027703000: system.pc.south_bridge.ide.dma: Trying to send ReadReq addr 0x1e858008
2007027703000: system.pc.south_bridge.ide.dma: -- Done
2007027703000: system.pc.south_bridge.ide.dma: TransmitList: 0, inRetry: 0
2007027877000: system.pc.south_bridge.ide.dma: Received response ReadReq for addr: 0x1e858008 size: 8 nb: 0, tot: 8 sched 0 2007027877000: system.pc.south_bridge.ide.disks: PRD: baseAddr:0 (0) byteCount:65536 (8388488) eot:0 sector:128 2007027877000: system.pc.south_bridge.ide.disks: DMADataW: doDmaWrite, diskDelay: 1000000 totalDiskDelay: 1000128 gem5.opt: build/X86/dev/storage/ide_disk.cc:480: void IdeDisk::doDmaDataWrite(): Assertion `cmdBytesLeft <= MAX_DMA_SIZE' failed.
Program aborted at tick 2007027877000
--- BEGIN LIBC BACKTRACE ---
build/X86/gem5.opt(+0x108135c)[0x5615c2a7235c]
build/X86/gem5.opt(+0x109dc6a)[0x5615c2a8ec6a]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x143c0)[0x7f1b58eb23c0]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0xcb)[0x7f1b5845403b]
/lib/x86_64-linux-gnu/libc.so.6(abort+0x12b)[0x7f1b58433859]
/lib/x86_64-linux-gnu/libc.so.6(+0x22729)[0x7f1b58433729]
/lib/x86_64-linux-gnu/libc.so.6(+0x34006)[0x7f1b58445006]
build/X86/gem5.opt(+0xbe9130)[0x5615c25da130]
build/X86/gem5.opt(+0xbebd74)[0x5615c25dcd74]
build/X86/gem5.opt(+0x10914fd)[0x5615c2a824fd]
build/X86/gem5.opt(+0x10c2d50)[0x5615c2ab3d50]
build/X86/gem5.opt(+0x10c3f5a)[0x5615c2ab4f5a]
build/X86/gem5.opt(+0xc32be1)[0x5615c2623be1]
build/X86/gem5.opt(+0x972ac1)[0x5615c2363ac1]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x2a8738)[0x7f1b59169738]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x8dd8)[0x7f1b58f3ef48]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalCodeWithName+0x8fb)[0x7f1b5908be3b]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyFunction_Vectorcall+0x94)[0x7f1b59169114]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x74d6d)[0x7f1b58f35d6d]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x7d86)[0x7f1b58f3def6]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x8006b)[0x7f1b58f4106b]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x74d6d)[0x7f1b58f35d6d]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x12fd)[0x7f1b58f3746d]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalCodeWithName+0x8fb)[0x7f1b5908be3b]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyFunction_Vectorcall+0x94)[0x7f1b59169114]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x74d6d)[0x7f1b58f35d6d]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x7d86)[0x7f1b58f3def6]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalCodeWithName+0x8fb)[0x7f1b5908be3b]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(PyEval_EvalCodeEx+0x42)[0x7f1b5908c1c2]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(PyEval_EvalCode+0x1f)[0x7f1b5908c5af]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x1cfbf1)[0x7f1b59090bf1]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x25f537)[0x7f1b59120537]
--- END LIBC BACKTRACE ---

--
Greetings,
Miguel Antonio Avargues Gutiérrez.
_______________________________________________
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

Reply via email to