summaryrefslogtreecommitdiff
path: root/net/devlink/region.c
diff options
context:
space:
mode:
authorJiri Pirko <jiri@nvidia.com>2023-12-16 13:29:54 +0100
committerPaolo Abeni <pabeni@redhat.com>2023-12-19 15:31:40 +0100
commit11280ddeae238e3ea27d153794472cfca5e8d121 (patch)
tree93f710f77392c6ef709efb8c0d8586a55e874d94 /net/devlink/region.c
parent337ad364c48a0db7cedb5abb8d5e9163792fd596 (diff)
devlink: introduce __devl_is_registered() helper and use it instead of xa_get_mark()
Introduce __devl_is_registered() which does not assert on devlink instance lock and use it in notifications which may be called without devlink instance lock held. Signed-off-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Diffstat (limited to 'net/devlink/region.c')
-rw-r--r--net/devlink/region.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/devlink/region.c b/net/devlink/region.c
index e3bab458db94..b65181aa269a 100644
--- a/net/devlink/region.c
+++ b/net/devlink/region.c
@@ -234,7 +234,8 @@ static void devlink_nl_region_notify(struct devlink_region *region,
struct sk_buff *msg;
WARN_ON(cmd != DEVLINK_CMD_REGION_NEW && cmd != DEVLINK_CMD_REGION_DEL);
- if (!xa_get_mark(&devlinks, devlink->index, DEVLINK_REGISTERED))
+
+ if (!__devl_is_registered(devlink))
return;
msg = devlink_nl_region_notify_build(region, snapshot, cmd, 0, 0);