1. 15 7月, 2011 4 次提交
  2. 13 7月, 2011 5 次提交
  3. 30 5月, 2011 2 次提交
    • B
      NFSv4.1: unify pnfs_pageio_init functions · dfed206b
      Benny Halevy 提交于
      Use common code for pnfs_pageio_init_{read,write} and use
      a common generic pg_test function.
      
      Note that this function always assumes the the layout driver's
      pg_test method is implemented.
      
      [Fix BUG]
      Signed-off-by: NBoaz Harrosh <bharrosh@panasas.com>
      Signed-off-by: NBenny Halevy <bhalevy@panasas.com>
      dfed206b
    • B
      pnfs: Use byte-range for layoutget · fb3296eb
      Benny Halevy 提交于
      Add offset and count parameters to pnfs_update_layout and use them to get
      the layout in the pageio path.
      
      Order cache layout segments in the following order:
      * offset (ascending)
      * length (descending)
      * iomode (RW before READ)
      
      Test byte range against the layout segment in use in pnfs_{read,write}_pg_test
      so not to coalesce pages not using the same layout segment.
      
      [fix lseg ordering]
      [clean up pnfs_find_lseg lseg arg]
      [remove unnecessary FIXME]
      [fix ordering in pnfs_insert_layout]
      [clean up pnfs_insert_layout]
      Signed-off-by: NBenny Halevy <bhalevy@panasas.com>
      fb3296eb
  4. 12 5月, 2011 1 次提交
  5. 15 3月, 2011 1 次提交
  6. 12 3月, 2011 7 次提交
  7. 08 12月, 2010 1 次提交
    • T
      nfs: remove extraneous and problematic calls to nfs_clear_request · 2df485a7
      Trond Myklebust 提交于
      When a nfs_page is freed, nfs_free_request is called which also calls
      nfs_clear_request to clean out the lock and open contexts and free the
      pagecache page.
      
      However, a couple of places in the nfs code call nfs_clear_request
      themselves. What happens here if the refcount on the request is still high?
      We'll be releasing contexts and freeing pointers while the request is
      possibly still in use.
      
      Remove those bare calls to nfs_clear_context. That should only be done when
      the request is being freed.
      
      Note that when doing this, we need to watch out for tests of req->wb_page.
      Previously, nfs_set_page_tag_locked() and nfs_clear_page_tag_locked()
      would check the value of req->wb_page to figure out if the page is mapped
      into the nfsi->nfs_page_tree. We now indicate the page is mapped using
      the new bit PG_MAPPED in req->wb_flags .
      Reported-by: NJeff Layton <jlayton@redhat.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      2df485a7
  8. 25 10月, 2010 1 次提交
  9. 24 9月, 2010 1 次提交
  10. 31 7月, 2010 1 次提交
  11. 23 6月, 2010 1 次提交
  12. 15 5月, 2010 1 次提交
  13. 07 12月, 2009 1 次提交
  14. 06 12月, 2009 1 次提交
  15. 05 12月, 2009 1 次提交
  16. 12 8月, 2009 1 次提交
  17. 13 7月, 2009 1 次提交
  18. 18 6月, 2009 3 次提交
  19. 03 4月, 2009 3 次提交
  20. 24 12月, 2008 1 次提交
    • W
      nfs: remove redundant tests on reading new pages · 136221fc
      Wu Fengguang 提交于
      aops->readpages() and its NFS helper readpage_async_filler() will only
      be called to do readahead I/O for newly allocated pages. So it's not
      necessary to test for the always 0 dirty/uptodate page flags.
      
      The removal of nfs_wb_page() call also fixes a readahead bug: the NFS
      readahead has been synchronous since 2.6.23, because that call will
      clear PG_readahead, which is the reminder for asynchronous readahead.
      
      More background: the PG_readahead page flag is shared with PG_reclaim,
      one for read path and the other for write path. clear_page_dirty_for_io()
      unconditionally clears PG_readahead to prevent possible readahead residuals,
      assuming itself to be always called in the write path. However, NFS is one
      and the only exception in that it _always_ calls clear_page_dirty_for_io()
      in the read path, i.e. for readpages()/readpage().
      
      Cc: Trond Myklebust <Trond.Myklebust@netapp.com>
      Signed-off-by: NWu Fengguang <wfg@linux.intel.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      136221fc
  21. 17 5月, 2008 1 次提交
  22. 20 4月, 2008 1 次提交