Skip to content

Why "It is OK to receive RequestStatus_Aliased, it can be considered Issued" in Sequencer::makeRequest(PacketPtr pkt)? #919

Closed Answered by OdnetninI
ImagineBoom asked this question in Q&A
Discussion options

You must be logged in to vote

As you mention, when a request aliases with a previous address, the request is inserted in the m_RequestTable.

When the request callbacks from the cache, it completes all the pending requests.
You can check an example at Sequencer::readCallback

auto &seq_req_list = m_RequestTable[address];
while (!seq_req_list.empty()) {
        ....
        seq_req_list.pop_front();
}

Regarding the issueRequest, it forwards the request from the sequencer to the caches and the coherence protocol.
In the case you mention, the request for that address was already sent to the cache, so there is no need of sending it again.

Therefore, there is no retry. Let me show you a summary of the example you mention:

  1. C…

Replies: 1 comment

Comment options

You must be logged in to vote
0 replies
Answer selected by ImagineBoom
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants