Loading net/bridge/br_netfilter_hooks.c +4 −4 Original line number Diff line number Diff line Loading @@ -1008,10 +1008,10 @@ int br_nf_hook_thresh(unsigned int hook, struct net *net, struct nf_hook_state state; int ret; elem = rcu_dereference(net->nf.hooks[NFPROTO_BRIDGE][hook]); while (elem && (nf_hook_entry_priority(elem) <= NF_BR_PRI_BRNF)) elem = rcu_dereference(elem->next); for (elem = rcu_dereference(net->nf.hooks[NFPROTO_BRIDGE][hook]); elem && nf_hook_entry_priority(elem) <= NF_BR_PRI_BRNF; elem = rcu_dereference(elem->next)) ; if (!elem) return okfn(net, sk, skb); Loading net/netfilter/core.c +2 −4 Original line number Diff line number Diff line Loading @@ -107,10 +107,9 @@ int nf_register_net_hook(struct net *net, const struct nf_hook_ops *reg) mutex_lock(&nf_hook_mutex); /* Find the spot in the list */ while ((p = nf_entry_dereference(*pp)) != NULL) { for (; (p = nf_entry_dereference(*pp)) != NULL; pp = &p->next) { if (reg->priority < nf_hook_entry_priority(p)) break; pp = &p->next; } rcu_assign_pointer(entry->next, p); rcu_assign_pointer(*pp, entry); Loading @@ -137,12 +136,11 @@ void nf_unregister_net_hook(struct net *net, const struct nf_hook_ops *reg) return; mutex_lock(&nf_hook_mutex); while ((p = nf_entry_dereference(*pp)) != NULL) { for (; (p = nf_entry_dereference(*pp)) != NULL; pp = &p->next) { if (nf_hook_entry_ops(p) == reg) { rcu_assign_pointer(*pp, p->next); break; } pp = &p->next; } mutex_unlock(&nf_hook_mutex); if (!p) { Loading Loading
net/bridge/br_netfilter_hooks.c +4 −4 Original line number Diff line number Diff line Loading @@ -1008,10 +1008,10 @@ int br_nf_hook_thresh(unsigned int hook, struct net *net, struct nf_hook_state state; int ret; elem = rcu_dereference(net->nf.hooks[NFPROTO_BRIDGE][hook]); while (elem && (nf_hook_entry_priority(elem) <= NF_BR_PRI_BRNF)) elem = rcu_dereference(elem->next); for (elem = rcu_dereference(net->nf.hooks[NFPROTO_BRIDGE][hook]); elem && nf_hook_entry_priority(elem) <= NF_BR_PRI_BRNF; elem = rcu_dereference(elem->next)) ; if (!elem) return okfn(net, sk, skb); Loading
net/netfilter/core.c +2 −4 Original line number Diff line number Diff line Loading @@ -107,10 +107,9 @@ int nf_register_net_hook(struct net *net, const struct nf_hook_ops *reg) mutex_lock(&nf_hook_mutex); /* Find the spot in the list */ while ((p = nf_entry_dereference(*pp)) != NULL) { for (; (p = nf_entry_dereference(*pp)) != NULL; pp = &p->next) { if (reg->priority < nf_hook_entry_priority(p)) break; pp = &p->next; } rcu_assign_pointer(entry->next, p); rcu_assign_pointer(*pp, entry); Loading @@ -137,12 +136,11 @@ void nf_unregister_net_hook(struct net *net, const struct nf_hook_ops *reg) return; mutex_lock(&nf_hook_mutex); while ((p = nf_entry_dereference(*pp)) != NULL) { for (; (p = nf_entry_dereference(*pp)) != NULL; pp = &p->next) { if (nf_hook_entry_ops(p) == reg) { rcu_assign_pointer(*pp, p->next); break; } pp = &p->next; } mutex_unlock(&nf_hook_mutex); if (!p) { Loading