A computer system is presented implementing a system and method for
properly ordering write operations. The system and method for properly
ordering write operations aids in maintaining memory coherency within the
computer system. The computer system includes multiple interconnected
processing nodes. One or more of the processing nodes includes a central
processing unit (CPU) and/or a cache memory, and one or more of the
processing nodes includes a memory controller coupled to a memory. The CPU
or cache generates a write command to store data within the memory. The
memory controller receives the write command and responds to the write
command by issuing a target done response to the CPU or cache after the
memory controller: (i) properly orders the write command within the memory
controller with respect to other commands pending within the memory
controller, and (ii) determines that a coherency state with respect to the
write command has been established within the computer system.