diff options
author | Harald Welte <laforge@netfilter.org> | 2006-03-20 20:56:32 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2006-03-20 20:56:32 -0500 |
commit | dc808fe28db59fadf4ec32d53f62477fa28f3be8 (patch) | |
tree | 2d7033e5808a63d7fb1bddc452d1ec0b2f3d381a /net/netfilter/nf_conntrack_ftp.c | |
parent | 0d36f37bb1e1cbadca6dc90a840bb2bc9ab51c44 (diff) |
[NETFILTER] nf_conntrack: clean up to reduce size of 'struct nf_conn'
This patch moves all helper related data fields of 'struct nf_conn'
into a separate structure 'struct nf_conn_help'. This new structure
is only present in conntrack entries for which we actually have a
helper loaded.
Also, this patch cleans up the nf_conntrack 'features' mechanism to
resemble what the original idea was: Just glue the feature-specific
data structures at the end of 'struct nf_conn', and explicitly
re-calculate the pointer to it when needed rather than keeping
pointers around.
Saves 20 bytes per conntrack on my x86_64 box. A non-helped conntrack
is 276 bytes. We still need to save another 20 bytes in order to fit
into to target of 256bytes.
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/netfilter/nf_conntrack_ftp.c')
-rw-r--r-- | net/netfilter/nf_conntrack_ftp.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/netfilter/nf_conntrack_ftp.c b/net/netfilter/nf_conntrack_ftp.c index 6f210f39976..cd191b0d4ac 100644 --- a/net/netfilter/nf_conntrack_ftp.c +++ b/net/netfilter/nf_conntrack_ftp.c | |||
@@ -440,7 +440,7 @@ static int help(struct sk_buff **pskb, | |||
440 | u32 seq; | 440 | u32 seq; |
441 | int dir = CTINFO2DIR(ctinfo); | 441 | int dir = CTINFO2DIR(ctinfo); |
442 | unsigned int matchlen, matchoff; | 442 | unsigned int matchlen, matchoff; |
443 | struct ip_ct_ftp_master *ct_ftp_info = &ct->help->ct_ftp_info; | 443 | struct ip_ct_ftp_master *ct_ftp_info = &nfct_help(ct)->help.ct_ftp_info; |
444 | struct nf_conntrack_expect *exp; | 444 | struct nf_conntrack_expect *exp; |
445 | struct nf_conntrack_man cmd = {}; | 445 | struct nf_conntrack_man cmd = {}; |
446 | 446 | ||