X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=net%2Fcore%2Fdevlink.c;h=2aa77d4b80d0a777b72228922aa3a0c0657c8c65;hb=cc18b4685910d5d9de8314bae9c55790701b1811;hp=89baa7c0938b9580b322070da5069086cabd3bc7;hpb=fe24a97cf2543e8832e7a2124802e5c32aac05aa;p=platform%2Fkernel%2Flinux-starfive.git diff --git a/net/core/devlink.c b/net/core/devlink.c index 89baa7c..2aa77d4 100644 --- a/net/core/devlink.c +++ b/net/core/devlink.c @@ -1505,10 +1505,13 @@ static int devlink_nl_cmd_get_dumpit(struct sk_buff *msg, continue; } + devl_lock(devlink); err = devlink_nl_fill(msg, devlink, DEVLINK_CMD_NEW, NETLINK_CB(cb->skb).portid, cb->nlh->nlmsg_seq, NLM_F_MULTI); + devl_unlock(devlink); devlink_put(devlink); + if (err) goto out; idx++; @@ -11435,8 +11438,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);