Hey, so I keep getting those since recently: net/netfilter/nfnetlink_queue.c:519:19: warning: ‘nfnl_ct’ may be used uninitialized in this function [-Wmaybe-uninitialized] if (ct && nfnl_ct->build(skb, ct, ctinfo, NFQA_CT, NFQA_CT_INFO) < 0) ^ net/netfilter/nfnetlink_queue.c:316:23: note: ‘nfnl_ct’ was declared here struct nfnl_ct_hook *nfnl_ct; ^ net/netfilter/nfnetlink_queue.c: In function ‘nfqnl_recv_verdict’: net/netfilter/nfnetlink_queue.c:1083:11: warning: ‘nfnl_ct’ may be used uninitialized in this function [-Wmaybe-uninitialized] nfnl_ct->seq_adjust(entry->skb, ct, ctinfo, diff); ^ and was thinking can we shut them up like this? I know, it is ugly :-\ I mean, it is obvious in both cases that nfnl_ct won't be used if ct is not set but apparently gcc can't see that far... --- diff --git a/net/netfilter/nfnetlink_queue.c b/net/netfilter/nfnetlink_queue.c index 7d81d280cb4f..cd61b0b5c413 100644 --- a/net/netfilter/nfnetlink_queue.c +++ b/net/netfilter/nfnetlink_queue.c @@ -372,6 +372,8 @@ nfqnl_build_packet_message(struct net *net, struct nfqnl_instance *queue, if (ct != NULL) size += nfnl_ct->build_size(ct); } + } else { + nfnl_ct = NULL; } if (queue->flags & NFQA_CFG_F_UID_GID) { @@ -1069,6 +1071,8 @@ nfqnl_recv_verdict(struct sock *ctnl, struct sk_buff *skb, nfnl_ct = rcu_dereference(nfnl_ct_hook); if (nfnl_ct != NULL) ct = nfqnl_ct_parse(nfnl_ct, nlh, nfqa, entry, &ctinfo); + } else { + nfnl_ct = NULL; } if (nfqa[NFQA_PAYLOAD]) { -- Regards/Gruss, Boris. ECO tip #101: Trim your mails when you reply. -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html