From: Greg Kroah-Hartman Date: Mon, 10 Jun 2019 14:29:00 +0000 (+0200) Subject: 4.14-stable patches X-Git-Tag: v5.1.9~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=dc22214f52b80c16f6ea381e2aa0b1c8a1b243ed;hp=3fe98d412b72f8bea928bd8ee96695db270277a5;p=thirdparty%2Fkernel%2Fstable-queue.git 4.14-stable patches added patches: ethtool-check-the-return-value-of-get_regs_len.patch --- diff --git a/queue-4.14/ethtool-check-the-return-value-of-get_regs_len.patch b/queue-4.14/ethtool-check-the-return-value-of-get_regs_len.patch new file mode 100644 index 0000000000..906d645920 --- /dev/null +++ b/queue-4.14/ethtool-check-the-return-value-of-get_regs_len.patch @@ -0,0 +1,50 @@ +From f9fc54d313fab2834f44f516459cdc8ac91d797f Mon Sep 17 00:00:00 2001 +From: Yunsheng Lin +Date: Wed, 26 Dec 2018 19:51:46 +0800 +Subject: ethtool: check the return value of get_regs_len + +From: Yunsheng Lin + +commit f9fc54d313fab2834f44f516459cdc8ac91d797f upstream. + +The return type for get_regs_len in struct ethtool_ops is int, +the hns3 driver may return error when failing to get the regs +len by sending cmd to firmware. + +Signed-off-by: Yunsheng Lin +Signed-off-by: David S. Miller +Cc: Michal Kubecek +Signed-off-by: Greg Kroah-Hartman + +--- + net/core/ethtool.c | 12 ++++++++++-- + 1 file changed, 10 insertions(+), 2 deletions(-) + +--- a/net/core/ethtool.c ++++ b/net/core/ethtool.c +@@ -890,8 +890,13 @@ static noinline_for_stack int ethtool_ge + if (rc >= 0) + info.n_priv_flags = rc; + } +- if (ops->get_regs_len) +- info.regdump_len = ops->get_regs_len(dev); ++ if (ops->get_regs_len) { ++ int ret = ops->get_regs_len(dev); ++ ++ if (ret > 0) ++ info.regdump_len = ret; ++ } ++ + if (ops->get_eeprom_len) + info.eedump_len = ops->get_eeprom_len(dev); + +@@ -1392,6 +1397,9 @@ static int ethtool_get_regs(struct net_d + return -EFAULT; + + reglen = ops->get_regs_len(dev); ++ if (reglen <= 0) ++ return reglen; ++ + if (regs.len > reglen) + regs.len = reglen; + diff --git a/queue-4.14/series b/queue-4.14/series index 128e6e0806..8eedef1e0b 100644 --- a/queue-4.14/series +++ b/queue-4.14/series @@ -34,3 +34,4 @@ qmi_wwan-add-quirk-for-quectel-dynamic-config.patch fs-stream_open-opener-for-stream-like-files-so-that-read-and-write-can-run-simultaneously-without-deadlock.patch fuse-add-fopen_stream-to-use-stream_open.patch ipv4-define-__ipv4_neigh_lookup_noref-when-config_inet-is-disabled.patch +ethtool-check-the-return-value-of-get_regs_len.patch