1. 31 10月, 2006 5 次提交
    • H
      [NET]: Fix segmentation of linear packets · c8884edd
      Herbert Xu 提交于
      skb_segment fails to segment linear packets correctly because it
      tries to write all linear parts of the original skb into each
      segment.  This will always panic as each segment only contains
      enough space for one MSS.
      
      This was not detected earlier because linear packets should be
      rare for GSO.  In fact it still remains to be seen what exactly
      created the linear packets that triggered this bug.  Basically
      the only time this should happen is if someone enables GSO
      emulation on an interface that does not support SG.
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c8884edd
    • D
      [XFRM] xfrm_user: Fix unaligned accesses. · 54489c14
      David S. Miller 提交于
      Use memcpy() to move xfrm_address_t objects in and out
      of netlink messages.  The vast majority of xfrm_user was
      doing this properly, except for copy_from_user_state()
      and copy_to_user_state().
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      54489c14
    • D
      [APPLETALK]: Fix potential OOPS in atalk_sendmsg(). · 201a95af
      David S. Miller 提交于
      atrtr_find() can return NULL, so do not blindly dereference
      rt->dev before we check for rt being NULL.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      201a95af
    • A
      [PATCH] fix "sunrpc: fix refcounting problems in rpc servers" · 202dd450
      Andrew Morton 提交于
      - printk should remain dprintk
      
      - fix coding-style.
      
      Cc: Neil Brown <neilb@suse.de>
      Cc: Trond Myklebust <trond.myklebust@fys.uio.no>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      202dd450
    • N
      [PATCH] sunrpc: fix refcounting problems in rpc servers · d6740df9
      Neil Brown 提交于
      A recent patch fixed a problem which would occur when the refcount on an
      auth_domain reached zero.  This problem has not been reported in practice
      despite existing in two major kernel releases because the refcount can
      never reach zero.
      
      This patch fixes the problems that stop the refcount reaching zero.
      
      1/ We were adding to the refcount when inserting in the hash table,
         but only removing from the hashtable when the refcount reached zero.
         Obviously it never would.  So don't count the implied reference of
         being in the hash table.
      
      2/ There are two paths on which a socket can be destroyed.  One called
         svcauth_unix_info_release().  The other didn't.  So when the other was
         taken, we can lose a reference to an ip_map which in-turn holds a
         reference to an auth_domain
      
         So unify the exit paths into svc_sock_put.  This highlights the fact
         that svc_delete_socket has slightly odd semantics - it does not drop
         a reference but probably should.  Fixing this need a bit more
         thought and testing.
      Signed-off-by: NNeil Brown <neilb@suse.de>
      Cc: Trond Myklebust <trond.myklebust@fys.uio.no>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      d6740df9
  2. 26 10月, 2006 3 次提交
  3. 25 10月, 2006 6 次提交
  4. 23 10月, 2006 1 次提交
  5. 22 10月, 2006 4 次提交
    • T
    • J
      [ATM]: handle sysfs errors · 97f80bc6
      Jeff Garzik 提交于
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      97f80bc6
    • D
      [DCCP] ipv6: Fix opt_skb leak. · fd169f15
      David S. Miller 提交于
      Based upon a patch from Jesper Juhl.  Try to match the
      TCP IPv6 code this was copied from as much as possible,
      so that it's easy to see where to add the ipv6 pktoptions
      support code.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      fd169f15
    • G
      [DCCP]: Fix Oops in DCCPv6 · 82709531
      Gerrit Renker 提交于
      I think I got the cause for the Oops observed in
      http://www.mail-archive.com/dccp@vger.kernel.org/msg00578.html
      
      The problem is always with applications listening on PF_INET6 sockets. Apart
      from the mentioned oops, I observed another one one, triggered at irregular
      intervals via timer interrupt:
      
          run_timer_softirq -> dccp_keepalive_timer
                            -> inet_csk_reqsk_queue_prune
                            -> reqsk_free
                            -> dccp_v6_reqsk_destructor
      
      The latter function is the problem and is also the last function to be called
      in said kernel panic.
      
      In any case, there is a real problem with allocating the right request_sock
      which is what this patch tackles.
      
      It fixes the following problem:
       - application listens on PF_INET6
       - DCCPv4 packet comes in, is handed over to dccp_v4_do_rcv, from there
         to dccp_v4_conn_request
      
      Now: socket is PF_INET6, packet is IPv4. The following code then furnishes the
      connection with IPv6 - request_sock operations:
      
         req = reqsk_alloc(sk->sk_prot->rsk_prot);
      
      The first problem is that all further incoming packets will get a Reset since
      the connection can not be looked up.
      
      The second problem is worse:
       --> reqsk_alloc is called instead of inet6_reqsk_alloc
       --> consequently inet6_rsk_offset is never set (dangling pointer)
       --> the request_sock_ops are nevertheless still dccp6_request_ops
       --> destructor is called via reqsk_free
       --> dccp_v6_reqsk_destructor tries to free random memory location (inet6_rsk_offset not set)
       --> panic
      
      I have tested this for a while, DCCP sockets are now handled correctly in all
      three scenarios (v4/v6 only/v4-mapped).
      
      Commiter note: I've added the dccp_request_sock_ops forward declaration to keep
                     the tree building and to reduce the size of the patch for 2.6.19,
                     later I'll move the functions to the top of the affected source
                     code to match what we have in the TCP counterpart, where this
                     problem hasn't existed in the first place, dumb me not to have
                     done the same thing on DCCP land 8)
      Signed-off-by: NGerrit Renker <gerrit@erg.abdn.ac.uk>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@mandriva.com>
      82709531
  6. 21 10月, 2006 3 次提交
  7. 20 10月, 2006 5 次提交
  8. 19 10月, 2006 13 次提交