Hi All,

I am trying to communicate between two systems through ethernet in ARM
dist 2 nodes setup (bigLITTLE).
I want to do this with the SMMU (ARM IOMMU) enabled.
I have connected the ethernet device to the SMMU as discussed here -
https://github.com/orgs/gem5/discussions/239

When I try to transfer data between two systems through ethernet,
following assertion failure randomly happens (it happens sometimes,
not always).
I have added the debug trace leading upto the assertion failure.

7521909181000: system.realview.smmu: [t] requestor resp addr=0x8120e07e size=0x2
7521909181000: system.realview.smmu: [t] responder resp addr=0xffe5807e size=0x2
7521909183000: system.realview.smmu: [t] requestor resp
addr=0x8120e080 size=0x40
7521909183000: system.realview.smmu: [t] responder resp
addr=0xffe58080 size=0x40
7521909184000: system.ethernet.TxDesc: DMA of packet complete
7521909184000: system.ethernet.TxDesc: TxDescriptor data d1:
0xffe5807e d2: 0x200ab100042
7521909184000: system.ethernet.TxDesc: TxDescriptor data d1:
0xffe5807e d2: 0x201ab100042
7521909184000: system.ethernet.TxDesc: Proccesing Non-Ip packet
7521909184000: system.ethernet.TxDesc: Calculating checksums for packet
gem5.opt: src/dev/net/i8254xGBe.cc:1820: void
gem5::IGbE::TxDescCache::pktComplete(): Assertion `ip || ip6' failed.

As shown in the error, assertion is triggered from:
https://github.com/gem5/gem5/blob/e9da8d67bdbb23fbd0578a379f08f42bce50121d/src/dev/net/i8254xGBe.cc#L1820C11-L1820C11

Assert fails in both atomic CPU mode as well as timing mode. I did not
observe this issue when the SMMU is disabled.

I am still new to debugging gem5 at the source code level and I wanted
to check if anyone else has encountered a similar issue.
>From what I understood, assert is triggered because pkt pointer does
not belong to a Ipv4 or Ipv6 type.
However, I am not sure what can cause this error.
I really appreciate any help in resolving this issue or any pointers
to debug this issue further.

Thanks in advance!
Regards,
Chathura
_______________________________________________
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org

Reply via email to