On Fri, 7 Feb 2025 15:21:45 -0800 lon...@linuxonhyperv.com wrote: > + /* At least one eth_dev is probed, init shared data */ > + if (rte_eal_process_type() == RTE_PROC_PRIMARY) { > + rte_spinlock_lock(&mana_shared_data_lock); > + mana_local_data.primary_cnt++; > + rte_spinlock_unlock(&mana_shared_data_lock); > + } else { > + rte_spinlock_lock(&mana_shared_data_lock); > + mana_local_data.secondary_cnt++; > + rte_spinlock_unlock(&mana_shared_data_lock); > + > + rte_spinlock_lock(&mana_shared_data->lock); > + mana_shared_data->secondary_cnt++; > + rte_spinlock_unlock(&mana_shared_data->lock);
If all you are doing is wanting a MP safe counter, use atomic operations instead of the overhead of a spin lock.