From: Jiri Pirko Date: Thu, 18 Jan 2018 15:14:49 +0000 (+0100) Subject: net: sched: silence uninitialized parent variable warning in tc_dump_tfilter X-Git-Tag: v5.15~9522^2~132 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=d680b3524cd2b9c4f1dc2ba1823c538988bb85e2;p=platform%2Fkernel%2Flinux-starfive.git net: sched: silence uninitialized parent variable warning in tc_dump_tfilter When tcm->tcm_ifindex == TCM_IFINDEX_MAGIC_BLOCK, parent is still passed down but the value is never used. Compiler does not recognize it and issues a warning. Silence it down initializing parent to 0. Fixes: 7960d1daf278 ("net: sched: use block index as a handle instead of qdisc when block is shared") Reported-by: David Miller Reported-by: Stephen Rothwell Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller --- diff --git a/net/sched/cls_api.c b/net/sched/cls_api.c index e500d11..86d6e9d 100644 --- a/net/sched/cls_api.c +++ b/net/sched/cls_api.c @@ -1317,6 +1317,13 @@ static int tc_dump_tfilter(struct sk_buff *skb, struct netlink_callback *cb) block = tcf_block_lookup(net, tcm->tcm_block_index); if (!block) goto out; + /* If we work with block index, q is NULL and parent value + * will never be used in the following code. The check + * in tcf_fill_node prevents it. However, compiler does not + * see that far, so set parent to zero to silence the warning + * about parent being uninitialized. + */ + parent = 0; } else { const struct Qdisc_class_ops *cops; struct net_device *dev;