netfilter-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Patrick McHardy <kaber@trash.net>
To: Florian Westphal <fw@strlen.de>
Cc: netfilter-devel@vger.kernel.org,
	Holger Eitzenberger <heitzenberger@astaro.com>,
	Florian Westphal <fwestphal@astaro.com>
Subject: Re: [PATCH 2/3] netfilter: NFQUEUE: queue balancing support
Date: Fri, 05 Jun 2009 13:26:06 +0200	[thread overview]
Message-ID: <4A2900CE.5090004@trash.net> (raw)
In-Reply-To: <1244164542-10739-3-git-send-email-fw@strlen.de>

Florian Westphal wrote:
> Adds support for specifying a range of queues instead of a single queue
> id.
> Flows will be distributed across the given range.
> 
> This is useful for multicore systems: Instead of having a single
> application read packets from a queue, start multiple
> instances on queues x, x+1, .. x+n. Each instance can process
> flows independently.
> 
> Packets for the same connection are put into the same queue.

Nice work, applied. I've made two minor cosmetic changes:

> +#if defined(CONFIG_IP6_NF_IPTABLES) || defined(CONFIG_IP6_NF_IPTABLES_MODULE)
> +static u32 hash_v6(const struct sk_buff *skb)
> +{
> +	const struct ipv6hdr *ip6h = ipv6_hdr(skb);
> +	u32 addr[4];
> +
> +	addr[0] = ip6h->saddr.s6_addr32[0] ^ ip6h->daddr.s6_addr32[0];
> +	addr[1] = ip6h->saddr.s6_addr32[1] ^ ip6h->daddr.s6_addr32[1];
> +	addr[2] = ip6h->saddr.s6_addr32[2] ^ ip6h->daddr.s6_addr32[2];
> +	addr[3] = ip6h->saddr.s6_addr32[3] ^ ip6h->daddr.s6_addr32[3];
> +
> +	return jhash2(addr, 4, jhash_initval);

I changed 4 to ARRAY_SIZE(addr)

> +static bool nfqueue_tg_v1_check(const struct xt_tgchk_param *par)
> +{
> +	const struct xt_NFQ_info_v1 *info = par->targinfo;
> +	u32 maxid;
> +
> +	if (info->queues_total == 0) {
> +		printk(KERN_ERR "NFQUEUE: number of total queues is 0\n");
> +		return false;
> +	}
> +	maxid = info->queues_total - 1  + info->queuenum;
> +	if (maxid > 0xffff) {
> +		printk(KERN_ERR "NFQUEUE: number of queues (%u) out of range (got %u)\n",
> +							info->queues_total, maxid);
> +		return false;
> +	}
> +	return true;
> +}

and these printks to use pr_err to bring the line size down.

  parent reply	other threads:[~2009-06-05 11:26 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-05  1:15 NFQUEUE balancing extension (kernel changes) Florian Westphal
2009-06-05  1:15 ` [PATCH 1/3] netfilter: NFQUEUE use NFPROTO_UNSPEC Florian Westphal
2009-06-05 11:19   ` Patrick McHardy
2009-06-05  1:15 ` [PATCH 2/3] netfilter: NFQUEUE: queue balancing support Florian Westphal
2009-06-05  9:50   ` Pablo Neira Ayuso
2009-06-05 10:43     ` Holger Eitzenberger
2009-06-05 11:26   ` Patrick McHardy [this message]
2009-06-05 13:35     ` Florian Westphal
2009-06-05 13:07   ` Jan Engelhardt
2009-06-05 13:23     ` Jan Engelhardt
2009-06-05  1:15 ` [PATCH 3/3] netfilter: MASQUERADE: remove redundant rwlock Florian Westphal
2009-06-05 11:27   ` Patrick McHardy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4A2900CE.5090004@trash.net \
    --to=kaber@trash.net \
    --cc=fw@strlen.de \
    --cc=fwestphal@astaro.com \
    --cc=heitzenberger@astaro.com \
    --cc=netfilter-devel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).