Hello, good question! Thanks for your edits.
As answer: probably we need to change "If we know that we're holding ProcArrayLock exclusively, we don't need the read barrier." to "If we're removing xid, we don't need the read barrier because only the startup process can remove and add xids to KnownAssignedXids" Best regards, Mikhail.