Just a small clarification: `use` is currently declared as atomic in main, so all simple reads and writes to it are seq_cst atomic (and simple increment is a pair of two seq_cst atomic operations).I am not a language lawyer, but what I read is that C11 atomic fence is defined to only guarantee ordering of atomic objects. Since the use counter is not atomic in the original code, the replacement with rte_atomic_thread_fence() is not the same as original asm.My patch made these atomic and that is why. Should have no impact in datapath. I will respin with better human oriented comments, I have developed a distaste for AI prose. Reads like a lawyer wrote it.
- [PATCH v3 00/29] remove rte_smp_XX barriers Stephen Hemminger
- [PATCH v3 01/29] bpf: replace deprecated SMP barri... Stephen Hemminger
- Re: [PATCH v3 01/29] bpf: replace deprecated S... Wathsala Vithanage
- Re: [PATCH v3 01/29] bpf: replace deprecat... Stephen Hemminger
- Re: [PATCH v3 01/29] bpf: replace depr... Wathsala Vithanage
- Re: [PATCH v3 01/29] bpf: replace deprecat... Marat Khalili
- Re: [PATCH v3 01/29] bpf: replace depr... David Marchand
- Re: [PATCH v3 01/29] bpf: replace... Marat Khalili
- Re: [PATCH v3 01/29] bpf: rep... Stephen Hemminger
- Re: [PATCH v3 01/29] bpf:... Marat Khalili
- Re: [PATCH v3 01/29] bpf:... Stephen Hemminger
- Re: [PATCH v3 01/29] bpf: replace depr... Marat Khalili
- [PATCH v3 02/29] bus/vmbus: remove packed attribut... Stephen Hemminger
- [PATCH v3 04/29] bus/vmbus: fix missing acquire on... Stephen Hemminger
- [PATCH v3 03/29] bus/vmbus: fix ring buffer orderi... Stephen Hemminger
- [PATCH v3 05/29] bus/vmbus: replace SMP barriers w... Stephen Hemminger
- [PATCH v3 06/29] drivers/baseband: convert rte_smp... Stephen Hemminger
- RE: [PATCH v3 06/29] drivers/baseband: convert... Chautru, Nicolas
- [PATCH v3 07/29] net/hinic: replace rte_smp_rmb Stephen Hemminger
- [PATCH v3 08/29] net/intel: replace rte_smp_rmb Stephen Hemminger

