[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.LSU.2.00.0906041526540.10684@fbirervta.pbzchgretzou.qr>
Date: Thu, 4 Jun 2009 15:30:28 +0200 (CEST)
From: Jan Engelhardt <jengelh@...ozas.de>
To: Patrick McHardy <kaber@...sh.net>
cc: Evgeniy Polyakov <zbr@...emap.net>, netdev@...r.kernel.org,
David Miller <davem@...emloft.net>,
"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>,
Netfilter Development Mailinglist
<netfilter-devel@...r.kernel.org>
Subject: Re: [resend] Passive OS fingerprint xtables match.
On Thursday 2009-06-04 15:16, Patrick McHardy wrote:
> Evgeniy Polyakov wrote:
>> On Thu, Jun 04, 2009 at 02:11:24PM +0200, Patrick McHardy (kaber@...sh.net)
>> wrote:
>>> Thats not what I meant. struct xt_match_param is passed to the
>>> ->match() callbacks from *t_do_table(). This is where you can
>>> add the real hook number to have it available in ->match().
>>>
>>> (Forgot to mention earlier: please in a seperate patch and adjusting
>>> all *tables copies)
>>
>> Kind of this (for ipv4 only so far, also reorderd a field to fill the
>> gap):
>
> Exactly. But please verify that by reordering, you're not moving
> the more commonly used members out of the first cacheline.
>
I am not sure the struct was ordered for optimized cacheline performance
beforehand either.
* par->in, par->out is only rarely used (think of xt_physdev, besides
ipt_do_table itself);
* par->match similarly (xt_hashlimit)
* par->matchinfo, though showing more grep results, is usually copied to
the stack by means of struct foo_target_info *info = par->matchinfo;
etc.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists