netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Pablo Neira Ayuso <pablo@netfilter.org>
To: Patrick McHardy <kaber@trash.net>
Cc: Holger Eitzenberger <holger@eitzenberger.org>,
	David Miller <davem@davemloft.net>,
	netfilter-devel@vger.kernel.org, netdev@vger.kernel.org
Subject: Re: [patch 0/6] netfilter: ctnetlink allocation improvement
Date: Tue, 17 Mar 2009 11:24:51 +0100	[thread overview]
Message-ID: <49BF7A73.3010605@netfilter.org> (raw)
In-Reply-To: <49BF28A3.3010606@trash.net>

Hi Patrick,

Patrick McHardy wrote:
> These patches look almost perfect, there's just one minor thing
> that should be fixed from my perspective (from patch 4):
> 
>> +    l3proto = nf_ct_l3proto_find_get(tuple->src.l3num);
>> +    len += l3proto->nla_size;
>> +    nf_ct_l3proto_put(l3proto);
>> +
>> +    l4proto = nf_ct_l4proto_find_get(tuple->src.l3num,
>> tuple->dst.protonum);
>> +    len += l4proto->nla_size;
>> +    nf_ct_l4proto_put(l4proto);
>> +
>> +    return alloc_skb(len, gfp);
> 
> Its preferrable not to use module reference counting during packet
> processing, the protocols can be accessed safely using RCU. I thought
> I had fixed all those areas, but I now notice that ctnetlink is full
> of similar spots and takes and drops module references quite
> excessively. So just leave it as it is I guess, this should be fully
> fixed anyways.

Indeed, there are still a couple of module reference spots. We only
remove them from the event delivery path.

> I'll wait a few hours for others to comment before applying your
> patches.

Hm, it seems that our patches follows two different principles. AFAICS,
Holger calculates an approximate message size to avoid trimming, while I
calculate the exact message size.

-- 
"Los honestos son inadaptados sociales" -- Les Luthiers

  parent reply	other threads:[~2009-03-17 10:24 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-16 22:06 [patch 0/6] netfilter: ctnetlink allocation improvement Holger Eitzenberger
2009-03-16 22:07 ` [patch 1/6] ctnetlink: add callbacks to the per-proto nlattrs Holger Eitzenberger
2009-03-25 17:25   ` Patrick McHardy
2009-03-16 22:07 ` [patch 2/6] netlink: add nla_policy_len() Holger Eitzenberger
2009-03-25 17:27   ` Patrick McHardy
2009-03-16 22:07 ` [patch 3/6] netfilter: limit the length of the helper name Holger Eitzenberger
2009-03-25 17:32   ` Patrick McHardy
2009-03-25 17:41     ` Holger Eitzenberger
2009-03-25 17:44       ` Patrick McHardy
2009-03-16 22:07 ` [patch 4/6] ctnetlink: allocate right-sized ctnetlink skb Holger Eitzenberger
2009-03-25 17:46   ` Patrick McHardy
2009-03-16 22:07 ` [patch 5/6] netfilter: add generic function to get len of generic policy Holger Eitzenberger
2009-03-16 22:07 ` [patch 6/6] netfilter: calculate per-protocol nlattr size Holger Eitzenberger
2009-03-17  4:35 ` [patch 0/6] netfilter: ctnetlink allocation improvement Patrick McHardy
2009-03-17  7:39   ` Holger Eitzenberger
2009-03-17  9:07   ` Florian Westphal
2009-03-17 10:24   ` Pablo Neira Ayuso [this message]
2009-03-17  9:49 ` Pablo Neira Ayuso
2009-03-17 10:03   ` Holger Eitzenberger

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=49BF7A73.3010605@netfilter.org \
    --to=pablo@netfilter.org \
    --cc=davem@davemloft.net \
    --cc=holger@eitzenberger.org \
    --cc=kaber@trash.net \
    --cc=netdev@vger.kernel.org \
    --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).