Commit ca361810 authored by Changli Gao's avatar Changli Gao Committed by Patrick McHardy

netfilter: xt_NFQUEUE: remove modulo operations

Signed-off-by: default avatarChangli Gao <xiaosuo@gmail.com>
Acked-by: default avatarEric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: default avatarPatrick McHardy <kaber@trash.net>
parent e5fc9e7a
...@@ -72,10 +72,12 @@ nfqueue_tg_v1(struct sk_buff *skb, const struct xt_action_param *par) ...@@ -72,10 +72,12 @@ nfqueue_tg_v1(struct sk_buff *skb, const struct xt_action_param *par)
if (info->queues_total > 1) { if (info->queues_total > 1) {
if (par->family == NFPROTO_IPV4) if (par->family == NFPROTO_IPV4)
queue = hash_v4(skb) % info->queues_total + queue; queue = (((u64) hash_v4(skb) * info->queues_total) >>
32) + queue;
#if defined(CONFIG_IP6_NF_IPTABLES) || defined(CONFIG_IP6_NF_IPTABLES_MODULE) #if defined(CONFIG_IP6_NF_IPTABLES) || defined(CONFIG_IP6_NF_IPTABLES_MODULE)
else if (par->family == NFPROTO_IPV6) else if (par->family == NFPROTO_IPV6)
queue = hash_v6(skb) % info->queues_total + queue; queue = (((u64) hash_v6(skb) * info->queues_total) >>
32) + queue;
#endif #endif
} }
return NF_QUEUE_NR(queue); return NF_QUEUE_NR(queue);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment