>> 1. Software writing the valid bit in the WQE. >> 2. Software reading shadow memory (hw_tail) value. > You are missing an ordered atomic on this read it looks like Hi Jason, Why do you think we need atomic ops in this case? We aren't trying to protect from multiple threads but CPU re-ordering of a write and a read. Thank you, Tatyana