diff --git a/net/core/devlink.c b/net/core/devlink.c index cfa6a099457ae0..b3a869ccc8ed6f 100644 --- a/net/core/devlink.c +++ b/net/core/devlink.c @@ -11358,8 +11358,10 @@ void devl_region_destroy(struct devlink_region *region) devl_assert_locked(devlink); /* Free all snapshots of region */ + mutex_lock(®ion->snapshot_lock); list_for_each_entry_safe(snapshot, ts, ®ion->snapshot_list, list) devlink_region_snapshot_del(region, snapshot); + mutex_unlock(®ion->snapshot_lock); list_del(®ion->list); mutex_destroy(®ion->snapshot_lock);