mshr.cc (11744:5d33c6972dda) | mshr.cc (11751:cd6248b276a8) |
---|---|
1/* 2 * Copyright (c) 2012-2013, 2015-2016 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 --- 388 unchanged lines hidden (view full) --- 397 // so this MSHR is the orgering point, and we need to respond 398 // after we receive data. 399 // 2. It's an invalidation (e.g., UpgradeReq), and we need 400 // to forward the snoop up the hierarchy after the current 401 // transaction completes. 402 403 // Start by determining if we will eventually respond or not, 404 // matching the conditions checked in Cache::handleSnoop | 1/* 2 * Copyright (c) 2012-2013, 2015-2016 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 --- 388 unchanged lines hidden (view full) --- 397 // so this MSHR is the orgering point, and we need to respond 398 // after we receive data. 399 // 2. It's an invalidation (e.g., UpgradeReq), and we need 400 // to forward the snoop up the hierarchy after the current 401 // transaction completes. 402 403 // Start by determining if we will eventually respond or not, 404 // matching the conditions checked in Cache::handleSnoop |
405 bool will_respond = isPendingModified() && pkt->needsResponse() && 406 pkt->cmd != MemCmd::InvalidateReq; | 405 bool will_respond = isPendingModified() && pkt->needsResponse(); |
407 408 // The packet we are snooping may be deleted by the time we 409 // actually process the target, and we consequently need to 410 // save a copy here. Clear flags and also allocate new data as 411 // the original packet data storage may have been deleted by 412 // the time we get to process this packet. In the cases where 413 // we are not responding after handling the snoop we also need 414 // to create a copy of the request to be on the safe side. In --- 181 unchanged lines hidden --- | 406 407 // The packet we are snooping may be deleted by the time we 408 // actually process the target, and we consequently need to 409 // save a copy here. Clear flags and also allocate new data as 410 // the original packet data storage may have been deleted by 411 // the time we get to process this packet. In the cases where 412 // we are not responding after handling the snoop we also need 413 // to create a copy of the request to be on the safe side. In --- 181 unchanged lines hidden --- |