From e4a58ef3ce4e7bd20c22390b13799c8f1c498780 Mon Sep 17 00:00:00 2001 From: Guillaume Nault Date: Mon, 23 Mar 2020 21:48:47 +0100 Subject: [PATCH] net: sched: refine extack messages in tcf_change_indev Add an error message when device wasn't found. While there, also set the bad attribute's offset in extack. Signed-off-by: Guillaume Nault Signed-off-by: David S. Miller --- include/net/pkt_cls.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/include/net/pkt_cls.h b/include/net/pkt_cls.h index 1db8b27d4515..41902e10d503 100644 --- a/include/net/pkt_cls.h +++ b/include/net/pkt_cls.h @@ -502,12 +502,16 @@ tcf_change_indev(struct net *net, struct nlattr *indev_tlv, struct net_device *dev; if (nla_strlcpy(indev, indev_tlv, IFNAMSIZ) >= IFNAMSIZ) { - NL_SET_ERR_MSG(extack, "Interface name too long"); + NL_SET_ERR_MSG_ATTR(extack, indev_tlv, + "Interface name too long"); return -EINVAL; } dev = __dev_get_by_name(net, indev); - if (!dev) + if (!dev) { + NL_SET_ERR_MSG_ATTR(extack, indev_tlv, + "Network device not found"); return -ENODEV; + } return dev->ifindex; } -- 2.30.2