dist_iface.cc (11622:0b2aaf6f5c78) dist_iface.cc (11701:5e7599457b97)
1/*
2 * Copyright (c) 2015 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

--- 393 unchanged lines hidden (view full) ---

402 if (!ckptRestore)
403 return;
404
405 std::vector<Desc> v;
406 while (!descQueue.empty()) {
407 Desc d = descQueue.front();
408 descQueue.pop();
409 d.sendTick = curTick();
1/*
2 * Copyright (c) 2015 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

--- 393 unchanged lines hidden (view full) ---

402 if (!ckptRestore)
403 return;
404
405 std::vector<Desc> v;
406 while (!descQueue.empty()) {
407 Desc d = descQueue.front();
408 descQueue.pop();
409 d.sendTick = curTick();
410 d.sendDelay = d.packet->size(); // assume 1 tick/byte max link speed
410 d.sendDelay = d.packet->simLength; // assume 1 tick/byte max link speed
411 v.push_back(d);
412 }
413
414 for (auto &d : v)
415 descQueue.push(d);
416
417 if (recvDone->scheduled()) {
418 assert(!descQueue.empty());

--- 69 unchanged lines hidden (view full) ---

488 packet->serialize("rxPacket", cp);
489}
490
491void
492DistIface::RecvScheduler::Desc::unserialize(CheckpointIn &cp)
493{
494 UNSERIALIZE_SCALAR(sendTick);
495 UNSERIALIZE_SCALAR(sendDelay);
411 v.push_back(d);
412 }
413
414 for (auto &d : v)
415 descQueue.push(d);
416
417 if (recvDone->scheduled()) {
418 assert(!descQueue.empty());

--- 69 unchanged lines hidden (view full) ---

488 packet->serialize("rxPacket", cp);
489}
490
491void
492DistIface::RecvScheduler::Desc::unserialize(CheckpointIn &cp)
493{
494 UNSERIALIZE_SCALAR(sendTick);
495 UNSERIALIZE_SCALAR(sendDelay);
496 packet = std::make_shared<EthPacketData>(16384);
496 packet = std::make_shared();
497 packet->unserialize("rxPacket", cp);
498}
499
500void
501DistIface::RecvScheduler::serialize(CheckpointOut &cp) const
502{
503 SERIALIZE_SCALAR(prevRecvTick);
504 // serialize the receive desc queue

--- 73 unchanged lines hidden (view full) ---

578 Header header;
579
580 // Prepare a dist header packet for the Ethernet packet we want to
581 // send out.
582 header.msgType = MsgType::dataDescriptor;
583 header.sendTick = curTick();
584 header.sendDelay = send_delay;
585
497 packet->unserialize("rxPacket", cp);
498}
499
500void
501DistIface::RecvScheduler::serialize(CheckpointOut &cp) const
502{
503 SERIALIZE_SCALAR(prevRecvTick);
504 // serialize the receive desc queue

--- 73 unchanged lines hidden (view full) ---

578 Header header;
579
580 // Prepare a dist header packet for the Ethernet packet we want to
581 // send out.
582 header.msgType = MsgType::dataDescriptor;
583 header.sendTick = curTick();
584 header.sendDelay = send_delay;
585
586 header.dataPacketLength = pkt->size();
586 header.dataPacketLength = pkt->length;
587 header.simLength = pkt->simLength;
587
588 // Send out the packet and the meta info.
589 sendPacket(header, pkt);
590
591 DPRINTF(DistEthernetPkt,
592 "DistIface::sendDataPacket() done size:%d send_delay:%llu\n",
588
589 // Send out the packet and the meta info.
590 sendPacket(header, pkt);
591
592 DPRINTF(DistEthernetPkt,
593 "DistIface::sendDataPacket() done size:%d send_delay:%llu\n",
593 pkt->size(), send_delay);
594 pkt->length, send_delay);
594}
595
596void
597DistIface::recvThreadFunc(Event *recv_done, Tick link_delay)
598{
599 EthPacketPtr new_packet;
600 DistHeaderPkt::Header header;
601

--- 207 unchanged lines hidden ---
595}
596
597void
598DistIface::recvThreadFunc(Event *recv_done, Tick link_delay)
599{
600 EthPacketPtr new_packet;
601 DistHeaderPkt::Header header;
602

--- 207 unchanged lines hidden ---