All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexander Samad <alex@samad.com.au>
To: netfilter-devel@lists.netfilter.org
Cc: Grzegorz Janoszka <Grzegorz.Janoszka@pro.onet.pl>
Subject: IPMARK nfcache
Date: Sat, 29 Oct 2005 08:17:28 +1000	[thread overview]
Message-ID: <20051028221728.GC10248@samad.com.au> (raw)

[-- Attachment #1: Type: text/plain, Size: 2456 bytes --]

Hi

Recently went to path IPMARK (Patchlet from patch o matic) to a 2.6.14
source tree and I have noticed this compilation error

net/ipv4/netfilter/ipt_IPMARK.c: In function 'target':
net/ipv4/netfilter/ipt_IPMARK.c:36: error: 'struct sk_buff' has no
member named 'nfcache'
net/ipv4/netfilter/ipt_IPMARK.c:36: error: 'NFC_ALTERED' undeclared
(first use in this function)
net/ipv4/netfilter/ipt_IPMARK.c:36: error: (Each undeclared identifier
is reported only once
net/ipv4/netfilter/ipt_IPMARK.c:36: error: for each function it appears
in.)

on investigation the nfcache field from sk_buff has been removed, having
a look on the net as to why

I was wondering what mechanism is need to replace the 'ncfcache |
NFC_ALTERED' statement


Seem like it has been killed - gives me the impression I can remove this
line with no bad side effects ?

commit 6869c4d8e066e21623c812c448a05f1ed931c9c6
Author: Harald Welte <laforge@netfilter.org>
Date:   Tue Aug 9 19:24:19 2005 -0700

    [NETFILTER]: reduce netfilter sk_buff enlargement
    
    As discussed at netconf'05, we're trying to save every bit in
sk_buff.
    The patch below makes sk_buff 8 bytes smaller.  I did some basic
    testing on my notebook and it seems to work.
    
    The only real in-tree user of nfcache was IPVS, who only needs a
    single bit.  Unfortunately I couldn't find some other free bit in
    sk_buff to stuff that bit into, so I introduced a separate field for
    them.  Maybe the IPVS guys can resolve that to further save space.
    
    Initially I wanted to shrink pkt_type to three bits (PACKET_HOST and
    alike are only 6 values defined), but unfortunately the bluetooth
code
    overloads pkt_type :(
    
    The conntrack-event-api (out-of-tree) uses nfcache, but Rusty just
    came up with a way how to do it without any skb fields, so it's safe
    to remove it.
    
    - remove all never-implemented 'nfcache' code
    - don't have ipvs code abuse 'nfcache' field. currently get's their
      own
      compile-conditional skb->ipvs_property field.  IPVS maintainers
can
      decide to move this bit elswhere, but nfcache needs to die.
    - remove skb->nfcache field to save 4 bytes
    - move skb->nfctinfo into three unused bits to save further 4 bytes
    
    Signed-off-by: Harald Welte <laforge@netfilter.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>



Thanks
Alex

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

             reply	other threads:[~2005-10-28 22:17 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-10-28 22:17 Alexander Samad [this message]
2005-10-29 16:53 ` IPMARK nfcache Grzegorz Janoszka
2005-10-29 17:12   ` Grzegorz Janoszka
2005-10-30  5:49     ` Alexander Samad

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=20051028221728.GC10248@samad.com.au \
    --to=alex@samad.com.au \
    --cc=Grzegorz.Janoszka@pro.onet.pl \
    --cc=netfilter-devel@lists.netfilter.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.