1. 13 Dec, 2007 1 commit
  2. 12 Dec, 2007 5 commits
    • Trond Myklebust's avatar
      NFS: Fix an Oops in NFS unmount · a10db50a
      Trond Myklebust authored
      Ensure that the dummy 'root dentry' is invisible to d_find_alias(). If not,
      then it may be spliced into the tree if a parent directory from the same
      filesystem gets mounted at a later time.
      Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
      a10db50a
    • Trond Myklebust's avatar
      Revert "NFS: Ensure we return zero if applications attempt to write zero bytes" · a5576cfa
      Trond Myklebust authored
      This reverts commit b9148c6b.
      
      On Wed, 12 Dec 2007 10:57:30 -0500, Chuck Lever wrote
      > commit b9148c6b should be reverted.  It was recently forward-ported
      > from some years-old patches, and is clearly not needed now.
      >
      > On Dec 11, 2007, at 5:21 PM, Adrian Bunk wrote:
      >
      >> This code became dead after commit
      >> b9148c6b
      >> (which BTW doesn't seem to have changed any behaviour) and can
      >> therefore
      >> be removed.
      >>
      >> Spotted by the Coverity checker.
      >>
      >> Signed-off-by: Adrian Bunk <bunk@kernel.org>
      >>
      >> ---
      >> --- linux-2.6/fs/nfs/direct.c.old     2007-12-02 21:54:53.000000000 +0100
      >> +++ linux-2.6/fs/nfs/direct.c 2007-12-02 21:55:10.000000000 +0100
      >> @@ -897,15 +897,12 @@ ssize_t nfs_file_direct_write(struct kio
      >>       if (!count)
      >>               goto out;       /* return 0 */
      >>
      >>       retval = -EINVAL;
      >>       if ((ssize_t) count < 0)
      >>               goto out;
      >> -     retval = 0;
      >> -     if (!count)
      >> -             goto out;
      >>
      >>       retval = nfs_sync_mapping(mapping);
      >>       if (retval)
      >>               goto out;
      >>
      >>       retval = nfs_direct_write(iocb, iov, nr_segs, pos, count);
      >>
      Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
      a5576cfa
    • James Lentini's avatar
      SUNRPC xprtrdma: fix XDR tail buf marshalling for all ops · 50e1092b
      James Lentini authored
      rpcrdma_convert_iovs is passed an xdr_buf representing either an RPC
      request or an RPC reply. In the case of a request, several
      calculations and tests involving pos are unnecessary. In the case of a
      reply, several calculations and tests involving pos are incorrect (the
      code tests pos against the reply xdr buf's len field, which is always
      0 at the time rpcrdma_convert_iovs is executed). This change removes
      the incorrect/unnecessary calculations and tests involving pos.
      
      This fixes an observed problem when reading certain file sizes over
      NFS/RDMA.
      Signed-off-by: default avatarTom Tucker <tom@opengridcomputing.com>
      Signed-off-by: default avatarTom Talpey <talpey@netapp.com>
      Signed-off-by: default avatarJames Lentini <jlentini@netapp.com>
      Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
      50e1092b
    • Trond Myklebust's avatar
      NFSv2/v3: Fix a memory leak when using -onolock · 5cef338b
      Trond Myklebust authored
      Neil Brown said:
      > Hi Trond,
      > 
      > We found that a machine which made moderately heavy use of
      > 'automount' was leaking some nfs data structures - particularly the
      > 4K allocated by rpc_alloc_iostats.
      > It turns out that this only happens with filesystems with -onolock
      > set.
      
      > The problem is that if NFS_MOUNT_NONLM is set, nfs_start_lockd doesn't
      > set server->destroy, so when the filesystem is unmounted, the
      > ->client_acl is not shutdown, and so several resources are still
      > held.  Multiple mount/umount cycles will slowly eat away memory
      > several pages at a time.
      Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
      Acked-by: default avatarNeilBrown <neilb@suse.de>
      5cef338b
    • Trond Myklebust's avatar
      NFS: Fix NFS mountpoint crossing... · 4584f520
      Trond Myklebust authored
      The check that was added to nfs_xdev_get_sb() to work around broken
      servers, works fine for NFSv2, but causes mountpoint crossing on NFSv3 to
      always return ESTALE.
      Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
      4584f520
  3. 11 Dec, 2007 30 commits
  4. 10 Dec, 2007 4 commits
    • Linus Torvalds's avatar
    • Linus Torvalds's avatar
      Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 · 437105f2
      Linus Torvalds authored
      * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
        [IA64] Fix iosapic interrupt delivery mode for CPE
        [IA64] kprobe: make kreturn probe handler stack unwind correct
        [IA64] operator priority fix in acpi_map_lsapic()
        [IA64] Add missing "space" to concatenated strings
        [IA64] make full use of macro efi_md_size
        [IA64] rename _bss to __bss_start
        [IA64] SGI Altix : fix bug in sn_io_late_init()
        [IA64] iosapic cleanup
        [IA64] signal : fix missing error checkings
        [IA64] export copy_page() to modules
        [IA64] don't assume that unwcheck.py is executable
        [IA64] increase .data.patch offset
      437105f2
    • Jarod Wilson's avatar
      firewire: OHCI 1.0 Isochronous Receive support · a186b4a6
      Jarod Wilson authored
      Third rendition of FireWire OHCI 1.0 Isochronous Receive support, using a
      zer-copy method similar to OHCI 1.1 which puts the IR data payload directly
      into the userspace buffer. The zero-copy implementation eliminates the
      video artifacts, audio popping, and buffer underrun problems seen with
      version 1 of this patch, as well as fixing a regression in OHCI 1.1 support
      introduced by version 2 of this patch.
      
      Successfully tested in OHCI 1.1 mode on the following chipsets:
      
      - NEC uPD72847 (rev 01), OHCI 1.1 (PCI)
      - Ti XIO2200(A) (rev 01), OHCI 1.1 (PCIe)
      - Ti TSB41AB2 (rev 01), OHCI 1.1 (PCI on SB Audigy)
      - Apple UniNorth 2 (rev 81), OHCI 1.1 (PowerBook G4 onboard)
      
      Successfully tested in OHCI 1.0 mode on the following chipsets:
      
      - Agere FW323 (rev 06), OHCI 1.0 (Mac Mini onboard)
      - Agere FW323 (rev 06), OHCI 1.0 (PCI)
      - Via VT6306 (rev 46), OHCI 1.0 (PCI)
      - NEC OrangeLink (rev 01), OHCI 1.0 (PCI)
      - NEC uPD72847 (rev 01), OHCI 1.1 (PCI)
      - Ti XIO2200(A) (rev 01), OHCI 1.1 (PCIe)
      
      The bulk of testing was done in an x86_64 system, but was also successfully
      sanity-tested on other systems, including a PPC(32) PowerBook G4 and an i686
      EPIA M10k. Crude benchmarking (watching top during capture) puts the cpu
      utilization during capture on the EPIA's 1GHz Via C3 processor around 13%,
      which is down from 30% with the v1 code.
      
      Some implementation details:
      
      To maintain the same userspace API as dual-buffer mode, we set up two
      descriptors for every incoming packet. The first is an INPUT_MORE descriptor,
      pointing to a buffer large enough to hold just the packet's iso headers,
      immediately followed by an INPUT_LAST descriptor, pointing to a chunk of the
      userspace buffer big enough for the packet's data payload. With this setup,
      each incoming packet fills in these two descriptors in a manner that very
      closely emulates dual-buffer receive, to the point where the bulk of the
      handle_ir_* code is now identical between the two (and probably primed for
      some restructuring to share code between them).
      
      The only caveat I have at the moment is that neither of my OHCI 1.0 Via
      VT6307-based FireWire controllers work particularly well with this code
      for reasons I have yet to figure out.
      Signed-off-by: default avatarJarod Wilson <jwilson@redhat.com>
      Signed-off-by: default avatarStefan Richter <stefanr@s5r6.in-berlin.de>
      a186b4a6
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://oss.sgi.com:8090/xfs/xfs-2.6 · 41f81e88
      Linus Torvalds authored
      * 'for-linus' of git://oss.sgi.com:8090/xfs/xfs-2.6:
        [XFS] Fix xfs_ichgtime()s broken usage of I_SYNC
        [XFS] Make xfsbufd threads freezable
        [XFS] revert to double-buffering readdir
        [XFS] Fix broken inode cluster setup.
        [XFS] Clear XBF_READ_AHEAD flag on I/O completion.
        [XFS] Fixed a few bugs in xfs_buf_associate_memory()
        [XFS] 971064 Various fixups for xfs_bulkstat().
        [XFS] Fix dbflush panic in xfs_qm_sync.
      41f81e88