1. 20 5月, 2006 3 次提交
    • V
      [SCTP]: Allow linger to abort 1-N style sockets. · b89498a1
      Vladislav Yasevich 提交于
      Enable SO_LINGER functionality for 1-N style sockets. The socket API
      draft will be clarfied to allow for this functionality. The linger
      settings will apply to all associations on a given socket.
      Signed-off-by: NVladislav Yasevich <vladislav.yasevich@hp.com>
      Signed-off-by: NSridhar Samudrala <sri@us.ibm.com>
      b89498a1
    • V
      [SCTP]: A better solution to fix the race between sctp_peeloff() and · 61c9fed4
      Vladislav Yasevich 提交于
      sctp_rcv().
      
      The goal is to hold the ref on the association/endpoint throughout the
      state-machine process.  We accomplish like this:
      
        /* ref on the assoc/ep is taken during lookup */
      
        if owned_by_user(sk)
       	sctp_add_backlog(skb, sk);
        else
       	inqueue_push(skb, sk);
      
        /* drop the ref on the assoc/ep */
      
      However, in sctp_add_backlog() we take the ref on assoc/ep and hold it
      while the skb is on the backlog queue.  This allows us to get rid of the
      sock_hold/sock_put in the lookup routines.
      
      Now sctp_backlog_rcv() needs to account for potential association move.
      In the unlikely event that association moved, we need to retest if the
      new socket is locked by user.  If we don't this, we may have two packets
      racing up the stack toward the same socket and we can't deal with it.
      If the new socket is still locked, we'll just add the skb to its backlog
      continuing to hold the ref on the association.  This get's rid of the
      need to move packets from one backlog to another and it also safe in
      case new packets arrive on the same backlog queue.
      
      The last step, is to lock the new socket when we are moving the
      association to it.  This is needed in case any new packets arrive on
      the association when it moved.  We want these to go to the backlog since
      we would like to avoid the race between this new packet and a packet
      that may be sitting on the backlog queue of the old socket toward the
      same association.
      Signed-off-by: NVladislav Yasevich <vladislav.yasevich@hp.com>
      Signed-off-by: NSridhar Samudrala <sri@us.ibm.com>
      61c9fed4
    • S
      [SCTP]: Set sk_err so that poll wakes up after a non-blocking connect failure. · 8de8c873
      Sridhar Samudrala 提交于
      Also fix some other cases where sk_err is not set for 1-1 style sockets.
      Signed-off-by: NSridhar Samudrala <sri@us.ibm.com>
      8de8c873
  2. 26 3月, 2006 1 次提交
    • D
      [PATCH] POLLRDHUP/EPOLLRDHUP handling for half-closed devices notifications · f348d70a
      Davide Libenzi 提交于
      Implement the half-closed devices notifiation, by adding a new POLLRDHUP
      (and its alias EPOLLRDHUP) bit to the existing poll/select sets.  Since the
      existing POLLHUP handling, that does not report correctly half-closed
      devices, was feared to be changed, this implementation leaves the current
      POLLHUP reporting unchanged and simply add a new bit that is set in the few
      places where it makes sense.  The same thing was discussed and conceptually
      agreed quite some time ago:
      
      http://lkml.org/lkml/2003/7/12/116
      
      Since this new event bit is added to the existing Linux poll infrastruture,
      even the existing poll/select system calls will be able to use it.  As far
      as the existing POLLHUP handling, the patch leaves it as is.  The
      pollrdhup-2.6.16.rc5-0.10.diff defines the POLLRDHUP for all the existing
      archs and sets the bit in the six relevant files.  The other attached diff
      is the simple change required to sys/epoll.h to add the EPOLLRDHUP
      definition.
      
      There is "a stupid program" to test POLLRDHUP delivery here:
      
       http://www.xmailserver.org/pollrdhup-test.c
      
      It tests poll(2), but since the delivery is same epoll(2) will work equally.
      Signed-off-by: NDavide Libenzi <davidel@xmailserver.org>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Michael Kerrisk <mtk-manpages@gmx.net>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      f348d70a
  3. 31 1月, 2006 1 次提交
  4. 18 1月, 2006 2 次提交
  5. 12 1月, 2006 2 次提交
  6. 04 1月, 2006 2 次提交
  7. 20 12月, 2005 1 次提交
  8. 16 12月, 2005 1 次提交
  9. 03 12月, 2005 1 次提交
  10. 12 11月, 2005 2 次提交
  11. 29 10月, 2005 4 次提交
  12. 07 10月, 2005 1 次提交
  13. 02 9月, 2005 1 次提交
    • J
      [CRYPTO]: crypto_free_tfm() callers no longer need to check for NULL · 573dbd95
      Jesper Juhl 提交于
      Since the patch to add a NULL short-circuit to crypto_free_tfm() went in,
      there's no longer any need for callers of that function to check for NULL.
      This patch removes the redundant NULL checks and also a few similar checks
      for NULL before calls to kfree() that I ran into while doing the
      crypto_free_tfm bits.
      
      I've succesfuly compile tested this patch, and a kernel with the patch 
      applied boots and runs just fine.
      
      When I posted the patch to LKML (and other lists/people on Cc) it drew the
      following comments :
      
       J. Bruce Fields commented
        "I've no problem with the auth_gss or nfsv4 bits.--b."
      
       Sridhar Samudrala said
        "sctp change looks fine."
      
       Herbert Xu signed off on the patch.
      
      So, I guess this is ready to be dropped into -mm and eventually mainline.
      Signed-off-by: NJesper Juhl <jesper.juhl@gmail.com>
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      573dbd95
  14. 30 8月, 2005 1 次提交
  15. 09 7月, 2005 1 次提交
  16. 21 6月, 2005 1 次提交
  17. 19 6月, 2005 1 次提交
  18. 14 6月, 2005 1 次提交
  19. 29 4月, 2005 2 次提交
  20. 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