On 28/04/2026 16:06, Eelco Chaudron wrote:
External email: Use caution opening links or attachments
On 1 Apr 2026, at 11:13, Eli Britstein wrote:
The started field is currently 'bool', accessed in netdev-dpdk only
under a mutex lock. In netdev-doca it will be used not under a lock.
Move it to be atomic as a pre-step towards it.
Hi Eli,
Thanks for the patch, one question and comment below.
//Eelco
Signed-off-by: Eli Britstein <[email protected]>
---
lib/netdev-dpdk-private.h | 11 ++++++++++-
lib/netdev-dpdk.c | 12 +++++++-----
2 files changed, 17 insertions(+), 6 deletions(-)
diff --git a/lib/netdev-dpdk-private.h b/lib/netdev-dpdk-private.h
index 9b82db750..79aa2292a 100644
--- a/lib/netdev-dpdk-private.h
+++ b/lib/netdev-dpdk-private.h
@@ -109,7 +109,7 @@ struct netdev_dpdk_common {
uint16_t port_id;
bool attached;
bool is_representor;
- bool started;
+ atomic_bool started;
struct eth_addr hwaddr;
int mtu;
int socket_id;
@@ -170,4 +170,13 @@ netdev_dpdk_common_cast(const struct netdev *netdev)
return CONTAINER_OF(netdev, struct netdev_dpdk_common, up);
}
+static inline bool
+dpdk_dev_is_started(struct netdev_dpdk_common *common)
I think naming should be inline with other APIs, something like;
netdev_dpdk_is_started()
Ack
+{
+ bool started;
+
+ atomic_read(&common->started, &started);
Any reason why this is not atomic_read_relaxed() (for all accesses)?
If so, please add a comment why.
I'll change to relaxed. It's just one read line, what do you mean "for
all accesses"? store as well?
+ return started;
+}
+
[...]
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev