Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 16 Nov 2010 15:53:44 +0000 (UTC)
From:      Andriy Gapon <avg@FreeBSD.org>
To:        cvs-src-old@freebsd.org
Subject:   cvs commit: src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs zfs_vnops.c
Message-ID:  <201011161554.oAGFs3E6055058@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
avg         2010-11-16 15:53:44 UTC

  FreeBSD src repository

  Modified files:
    sys/cddl/contrib/opensolaris/uts/common/fs/zfs zfs_vnops.c 
  Log:
  SVN rev 215401 on 2010-11-16 15:53:44Z by avg
  
  zfs+sendfile: populate all requested pages, not just those already cached
  
  kern_sendfile() uses vm_rdwr() to read-ahead blocks of data to populate
  page cache.  When sendfile stumbles upon a page that is not populated
  yet, it sends out all the mbufs that it collected so far.  This
  resulted in very poor performance with ZFS when file data is not in the
  page cache, because ZFS vop_read for UIO_NOCOPY case populated only
  those pages that are already in cache, but not valid.  Which means that
  most of the time it populated only the first requested page in the
  described above scenario.
  
  Reported by:    Alexander Zagrebin <alexz@visp.ru>
  Tested by:      Alexander Zagrebin <alexz@visp.ru>,
                  Artemiev Igor <ai@kliksys.ru>
  MFC after:      12 days
  
  Revision  Changes    Path
  1.85      +14 -4     src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201011161554.oAGFs3E6055058>