From: Miroslav Lichvar <mlichvar@redhat.com>
Date: Tue, 11 Jan 2022 15:10:53 +0000 (+0100)
Subject: net: fix sock_timestamping_bind_phc() to release device
X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=62009fa50c1a70a291f8f72a66b08449a03ea50e;p=linux.git

net: fix sock_timestamping_bind_phc() to release device

commit 2a4d75bfe41232608f5596a6d1369f92ccb20817 upstream.

Don't forget to release the device in sock_timestamping_bind_phc() after
it was used to get the vclock indices.

Fixes: d463126e23f1 ("net: sock: extend SO_TIMESTAMPING for PHC binding")
Signed-off-by: Miroslav Lichvar <mlichvar@redhat.com>
Cc: Yangbo Lu <yangbo.lu@nxp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---

diff --git a/net/core/sock.c b/net/core/sock.c
index 1b31e10181629..6ea317f84edd2 100644
--- a/net/core/sock.c
+++ b/net/core/sock.c
@@ -830,6 +830,8 @@ static int sock_timestamping_bind_phc(struct sock *sk, int phc_index)
 	}
 
 	num = ethtool_get_phc_vclocks(dev, &vclock_index);
+	dev_put(dev);
+
 	for (i = 0; i < num; i++) {
 		if (*(vclock_index + i) == phc_index) {
 			match = true;