From: Pablo Neira Ayuso Date: Sun, 25 Sep 2016 21:23:57 +0000 (+0200) Subject: Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net... X-Git-Tag: v4.14-rc1~2374^2~67^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f20fbc0717f9f007c94b2641134b19228d0ce9ed;p=platform%2Fkernel%2Flinux-rpi.git Merge branch 'master' of git://git./linux/kernel/git/davem/net-next Conflicts: net/netfilter/core.c net/netfilter/nf_tables_netdev.c Resolve two conflicts before pull request for David's net-next tree: 1) Between c73c24849011 ("netfilter: nf_tables_netdev: remove redundant ip_hdr assignment") from the net tree and commit ddc8b6027ad0 ("netfilter: introduce nft_set_pktinfo_{ipv4, ipv6}_validate()"). 2) Between e8bffe0cf964 ("net: Add _nf_(un)register_hooks symbols") and Aaron Conole's patches to replace list_head with single linked list. Signed-off-by: Pablo Neira Ayuso --- f20fbc0717f9f007c94b2641134b19228d0ce9ed diff --cc net/ipv6/netfilter/nft_chain_route_ipv6.c index 01eb0f6,2535223..f272747 --- a/net/ipv6/netfilter/nft_chain_route_ipv6.c +++ b/net/ipv6/netfilter/nft_chain_route_ipv6.c @@@ -31,8 -31,11 +31,9 @@@ static unsigned int nf_route_table_hook struct in6_addr saddr, daddr; u_int8_t hop_limit; u32 mark, flowlabel; + int err; - /* malformed packet, drop it */ - if (nft_set_pktinfo_ipv6(&pkt, skb, state) < 0) - return NF_DROP; + nft_set_pktinfo_ipv6(&pkt, skb, state); /* save source/dest address, mark, hoplimit, flowlabel, priority */ memcpy(&saddr, &ipv6_hdr(skb)->saddr, sizeof(saddr)); diff --cc net/netfilter/core.c index 72fc514,2c5327e..fa6715d --- a/net/netfilter/core.c +++ b/net/netfilter/core.c @@@ -296,9 -286,18 +329,17 @@@ void nf_unregister_hooks(struct nf_hook } EXPORT_SYMBOL(nf_unregister_hooks); + /* Caller MUST take rtnl_lock */ + void _nf_unregister_hooks(struct nf_hook_ops *reg, unsigned int n) + { + while (n-- > 0) + _nf_unregister_hook(®[n]); + } + EXPORT_SYMBOL(_nf_unregister_hooks); + -unsigned int nf_iterate(struct list_head *head, - struct sk_buff *skb, +unsigned int nf_iterate(struct sk_buff *skb, struct nf_hook_state *state, - struct nf_hook_ops **elemp) + struct nf_hook_entry **entryp) { unsigned int verdict;