Looking directly at the patch you are right, the lock is always taken after the atomic. The merge on my branch left both the try lock and lock out of the code without any markers for conflict (<<< === >>>). Strange.