
390 CHAPTER 6 Snoop-Based Multiprocessor Design
ensures that all reads that returned the old value precede the transaction. The con-
troller issuing the transaction ensures that the new value is written in the cache after
the bus transaction and that no other memory operations intervene.
6.2.7 Deadlock
A two-phase protocol, such as the request-response protocol of a memory operation,
presents a form of protocol-level deadlock, sometimes called/etch deadlock (Leiser-
son et al. 1996), that is not simply a question of buffer usage. While an entity is
attempting to issue its request, it needs to service incoming transactions. In an SMP
with an atomi ...