----- On Oct 1, 2021, at 12:20 PM, Linus Torvalds torvalds@xxxxxxxxxxxxxxxxxxxx wrote: [...] > But again - a lot of these made-up examples are exactly that: made up. > For us to have a ctrl_dep() macro, I really want to see an actual > honest-to-goodness case of this that we can point to. I've spent some quality time staring at generated assembler diff in the past days, and looking for code patterns of refcount_dec_and_test users, without much success. There are some cases which end up working by chance, e.g. in cases where the if leg has a smp_acquire__after_ctrl_dep and the else leg has code that emits a barrier(), but I did not find any buggy generated code per se. In order to observe those issues in real life, we would really need to have identical then/else legs to the branch. Thanks, Mathieu -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com