From: Greg Kroah-Hartman Date: Mon, 10 Jun 2019 14:28:44 +0000 (+0200) Subject: 4.9-stable patches X-Git-Tag: v5.1.9~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=3fe98d412b72f8bea928bd8ee96695db270277a5;p=thirdparty%2Fkernel%2Fstable-queue.git 4.9-stable patches added patches: ethtool-check-the-return-value-of-get_regs_len.patch --- diff --git a/queue-4.9/ethtool-check-the-return-value-of-get_regs_len.patch b/queue-4.9/ethtool-check-the-return-value-of-get_regs_len.patch new file mode 100644 index 00000000000..81de670e969 --- /dev/null +++ b/queue-4.9/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 +@@ -878,8 +878,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); + +@@ -1380,6 +1385,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.9/series b/queue-4.9/series index 42f2cac494f..8fb246ffb0d 100644 --- a/queue-4.9/series +++ b/queue-4.9/series @@ -82,3 +82,4 @@ tty-serial_core-add-install.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