1. 30 8月, 2005 2 次提交
    • H
      [NETFILTER]: Move ipv4 specific code from net/core/netfilter.c to net/ipv4/netfilter.c · 020b4c12
      Harald Welte 提交于
      Netfilter cleanup
      - Move ipv4 code from net/core/netfilter.c to net/ipv4/netfilter.c
      - Move ipv6 netfilter code from net/ipv6/ip6_output.c to net/ipv6/netfilter.c
      Signed-off-by: NHarald Welte <laforge@netfilter.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      020b4c12
    • H
      [NETFILTER]: reduce netfilter sk_buff enlargement · 6869c4d8
      Harald Welte 提交于
      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: NHarald Welte <laforge@netfilter.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6869c4d8
  2. 28 7月, 2005 1 次提交
  3. 06 7月, 2005 1 次提交
  4. 22 6月, 2005 1 次提交
  5. 19 5月, 2005 1 次提交
    • H
      [IPV4/IPV6] Ensure all frag_list members have NULL sk · 2fdba6b0
      Herbert Xu 提交于
      Having frag_list members which holds wmem of an sk leads to nightmares
      with partially cloned frag skb's.  The reason is that once you unleash
      a skb with a frag_list that has individual sk ownerships into the stack
      you can never undo those ownerships safely as they may have been cloned
      by things like netfilter.  Since we have to undo them in order to make
      skb_linearize happy this approach leads to a dead-end.
      
      So let's go the other way and make this an invariant:
      
      	For any skb on a frag_list, skb->sk must be NULL.
      
      That is, the socket ownership always belongs to the head skb.
      It turns out that the implementation is actually pretty simple.
      
      The above invariant is actually violated in the following patch
      for a short duration inside ip_fragment.  This is OK because the
      offending frag_list member is either destroyed at the end of the
      slow path without being sent anywhere, or it is detached from
      the frag_list before being sent.
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2fdba6b0
  6. 20 4月, 2005 1 次提交
  7. 17 4月, 2005 1 次提交
    • L
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds 提交于
      Initial git repository build. I'm not bothering with the full history,
      even though we have it. We can create a separate "historical" git
      archive of that later if we want to, and in the meantime it's about
      3.2GB when imported into git - space that would just make the early
      git days unnecessarily complicated, when we don't have a lot of good
      infrastructure for it.
      
      Let it rip!
      1da177e4