1. 11 7月, 2007 9 次提交
  2. 01 5月, 2007 3 次提交
  3. 21 4月, 2007 1 次提交
    • T
      RPC: Fix the TCP resend semantics for NFSv4 · 241c39b9
      Trond Myklebust 提交于
      Fix a regression due to the patch "NFS: disconnect before retrying NFSv4
      requests over TCP"
      
      The assumption made in xprt_transmit() that the condition
      	"req->rq_bytes_sent == 0 and request is on the receive list"
      should imply that we're dealing with a retransmission is false.
      Firstly, it may simply happen that the socket send queue was full
      at the time the request was initially sent through xprt_transmit().
      Secondly, doing this for each request that was retransmitted implies
      that we disconnect and reconnect for _every_ request that happened to
      be retransmitted irrespective of whether or not a disconnection has
      already occurred.
      
      Fix is to move this logic into the call_status request timeout handler.
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      241c39b9
  4. 13 2月, 2007 1 次提交
  5. 11 2月, 2007 1 次提交
  6. 04 2月, 2007 2 次提交
  7. 25 1月, 2007 1 次提交
  8. 06 12月, 2006 6 次提交
  9. 03 12月, 2006 1 次提交
  10. 02 10月, 2006 1 次提交
  11. 29 9月, 2006 1 次提交
  12. 23 9月, 2006 12 次提交
  13. 25 8月, 2006 1 次提交
    • D
      NFS: Check lengths more thoroughly in NFS4 readdir XDR decode · e8896495
      David Howells 提交于
      Check the bounds of length specifiers more thoroughly in the XDR decoding of
      NFS4 readdir reply data.
      
      Currently, if the server returns a bitmap or attr length that causes the
      current decode point pointer to wrap, this could go undetected (consider a
      small "negative" length on a 32-bit machine).
      
      Also add a check into the main XDR decode handler to make sure that the amount
      of data is a multiple of four bytes (as specified by RFC-1014).  This makes
      sure that we can do u32* pointer subtraction in the NFS client without risking
      an undefined result (the result is undefined if the pointers are not correctly
      aligned with respect to one another).
      Signed-Off-By: NDavid Howells <dhowells@redhat.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      (cherry picked from 5861fddd64a7eaf7e8b1a9997455a24e7f688092 commit)
      e8896495