1. A computer implemented method for relinquishing, by a selected processor, the selected processor's own exclusive ownership of a specified cache line, in a multi-processor system comprising the selected processor, each processor of the multi-processor system comprising a private cache, the selected processor being an out-of-order processor comprising a pipeline and a selected private cache, the method comprising: executing, by the selected processor, a demote instruction of a software program, the demote instruction specifying a logical address of the specified cache line, the executing the demote instruction by the selected processor causing a method to be performed comprising: translating, by the selected processor, the logical address to a cache address; based on the demote instruction specified logical address, determining, by the selected processor, whether the specified cache line is exclusively owned in the selected private cache of the selected processor; and based on the demote instruction in the pipeline not being in an incorrectly predicted branch path, and no older instruction, older than the demote instruction, in the pipeline not completing due to being flushed from the pipeline, and the selected processor determining that the specified cache line is exclusively owned in the selected private cache of the selected processor, relinquishing exclusive ownership, in the selected private cache, of the specified cache line by the selected processor.