1. 22 May, 2003 8 commits
  2. 21 May, 2003 14 commits
  3. 20 May, 2003 18 commits
    • Linus Torvalds's avatar
      Merge bk://kernel.bkbits.net/davem/net-2.5 · 07ca08b1
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/linux
      07ca08b1
    • Alexander Viro's avatar
      [PATCH] O_DIRECT open() fix · a45a6dde
      Alexander Viro authored
      Trivial bugfix: opening a file that doesn't have ->direct_IO() with
      O_DIRECT passed in flags fails (as it should) but doesn't call
      ->release() even though ->open() had been successful.
      
      IOW, we have a leak there - e.g.  open() of a tty with O_DIRECT will
      leak a reference to tty and tty_driver.  Besides, quite a few drivers
      are _not_ happy with struct file being freed without ->release() after
      ->open() has returned 0.
      a45a6dde
    • Alexander Viro's avatar
      [PATCH] seq_path() for /proc/pid/maps · 2d9318a1
      Alexander Viro authored
      This converts /proc/pid/maps to use of seq_file, cleans the issues with
      d_path() overflows as a side effect.
      
      It's incremental to seq_path() patch.
      2d9318a1
    • Alexander Viro's avatar
      [PATCH] seq_path(), /proc/mounts and /proc/swaps · 32ccd2b6
      Alexander Viro authored
      This adds a new seq_...() helper:
      
         seq_path(seq_file, mnt, dentry, escape)
      
      It spits the pathname into seq_file, does octal escapes for given set of
      characters, returns the number of characters it'd produced or -1 in case
      of error.  Long names are handled gracefully - you don't need anything
      to do, generic seq_file logics will do the right thing.
      
      /proc/mounts and /proc/swaps are converted to use of seq_path(), some
      junk removed.
      
      /proc/pid/maps will be converted next.
      32ccd2b6
    • David S. Miller's avatar
      Merge davem@nuts.ninka.net:/home/davem/src/BK/net-2.5 · df13121f
      David S. Miller authored
      into kernel.bkbits.net:/home/davem/net-2.5
      df13121f
    • David S. Miller's avatar
      eb30a973
    • David S. Miller's avatar
      95b9d2db
    • Neil Brown's avatar
      [PATCH] kNFSd: Allow request for nfsv4 pseudo root to perform an upcall. · ecdb3063
      Neil Brown authored
      Most cache-lookups to find export information will cause
      an upcall, but currently the lookup to find the pseudo root
      for nfsv4 wont asthe  cache-handle isn't made available.
      This patch makes it available and makes sure that if the
      upcall is made, the request is dropped (for now).
      ecdb3063
    • Neil Brown's avatar
      [PATCH] kNFSd: NFSv4 open share state patch · 448d25b8
      Neil Brown authored
      From: "William A.(Andy) Adamson" <andros@citi.umich.edu>
      
      
      this open share state patch creates all the structures and hash tables needed
      to create and destroy share state on OPEN.
      
      a struct nfs4_stateowner is introduced. this is currently only used for share
      state, but will also be used as an anchor for byte-range lock state. e.g. it
      will be either an (open)stateowner or a (lock)stateower.
      
      a struct nfs4_stateid is introduced with holds stateid info for openfiles per
      (open)stateowner. this struct will also hold byte-range lock info for
      (lock)stateowners.
      
      ownerstr_hashtbl[] holds nfs4_stateowners hashed by the nfs4_open owner and
      clientid, and is used to lookup nfs4_stateowners on OPEN.
      
      a struct nfs4_file is introduced which holds info on open files with state.
      
      file_hashtbl[] holds nfs4_files, and is used to find a file in order to search
      for conflicting share locks on OPEN. delegation info will hang off the
      nf4_file struct.
      
      i moved nfsd4_process_open1() into nfs4state.c, and added nfs4_process_open2()
      there as well
      
      i've left lease management, state reclaim, and the special replay management
      on sequenceid mutating operations like OPEN for subsequent patches.
      448d25b8
    • Neil Brown's avatar
      [PATCH] kNFSd: Minor rearrangements in NFSv4 server code to prepare for mroe state management. · 9c88ef1f
      Neil Brown authored
      From: "William A.(Andy) Adamson" <andros@citi.umich.edu>
      
      this is the first of several patches against 2.5 concerning NFSv4 state for
      nfsd. it cleans up the names of state structures in preperation for future
      share, lease, byte-range, and delegation patches. specifically, it
      
      1) renames portions of the stateid_t and moves it along with the clientid_t
      from xdr.h into state.h
      
      2) uses xdr_netobj to gather related data and length fields in struct
      nfs4_open (in xdr4.h) (e.g. we have op_fname.data and op_fname.len
      instead of op_name and op_namelen).
      
      3) renames NFSD4_CLIENT_MAXNAME to NFS4_OPAQUE_LIMIT which will be used in
      other state fields (not just for name length)
      9c88ef1f
    • Neil Brown's avatar
    • Neil Brown's avatar
      [PATCH] kNFSd: Make sure an RPC socket is closed immediately when a server write fails. · 667c8992
      Neil Brown authored
      The check for "write was incomplete" is not atomic with the actual write,
      so a second write could slip in after a partial write to a tcp socket
      and this will cause problems.
      
      So we move the locking out a bit, and test if the socket has
      been deleted (SK_DEAD) between getting the lock and trying
      to send.
      667c8992
    • Neil Brown's avatar
      [PATCH] kNFSd: Set SOCK_NOSPACE when RPC server decides there is insufficient. · 4690a87a
      Neil Brown authored
      SOCK_NOSPACE is set, so we must set it when we want to get
      a ->write_space callback.
      4690a87a
    • Neil Brown's avatar
      [PATCH] kNFSd: RPC server need to know that TCP and UDP have different wspace functions. · 9f632054
      Neil Brown authored
      From: Hirokazu Takahashi <taka@valinux.co.jp>
      
      sock_wspace() is used to see how much can be written to a udp socket,
      but tcp_wspace must be used on a tcp socket.
      This patch informs sunrpc/svcsock.c of this subtlety.
      9f632054
    • Neil Brown's avatar
      [PATCH] kNFSd: SVC sockets don't disable Nagle · be4ad944
      Neil Brown authored
      I noticed that the Nagle algorithm was disabled just recently on the
      client side, while it still seems to be enabled on the server side. The
      previous patch came from Chuck Lever.
      
      Below patch disables it on the server side as well. For latency reasons,
      this should be the desired behaviour NFS at both client and server.
      be4ad944
    • Neil Brown's avatar
      [PATCH] kNFSd: TCP nfsd connection hangs when partial record header is received · b07e2e98
      Neil Brown authored
      Below patch resolves a hang where a TCP nfsd connection will hang even
      though new data is received on the socket. We've seen this a few times in
      our lab, but it usually happened every few weeks.
      
      If a short record header is received, the SK_BUSY flag is never cleared,
      and even though new data arrives, it will not be handled. This in turn
      leads to hangs of particular clients (while others will continue to work
      without problem).
      
      I also changed the return code for that condition to be the same as for a
      (regular) short read.
      b07e2e98
    • Stephen Hemminger's avatar
      6e2b5ada
    • Stephen Hemminger's avatar
      081f608e