1. 02 10月, 2017 1 次提交
  2. 03 7月, 2017 1 次提交
  3. 20 6月, 2017 1 次提交
  4. 26 4月, 2017 1 次提交
  5. 25 2月, 2017 1 次提交
  6. 31 1月, 2017 1 次提交
  7. 30 11月, 2016 1 次提交
    • C
      iomap: implement direct I/O · ff6a9292
      Christoph Hellwig 提交于
      This adds a full fledget direct I/O implementation using the iomap
      interface. Full fledged in this case means all features are supported:
      AIO, vectored I/O, any iov_iter type including kernel pointers, bvecs
      and pipes, support for hole filling and async apending writes.  It does
      not mean supporting all the warts of the old generic code.  We expect
      i_rwsem to be held over the duration of the call, and we expect to
      maintain i_dio_count ourselves, and we pass on any kinds of mapping
      to the file system for now.
      
      The algorithm used is very simple: We use iomap_apply to iterate over
      the range of the I/O, and then we use the new bio_iov_iter_get_pages
      helper to lock down the user range for the size of the extent.
      bio_iov_iter_get_pages can currently lock down twice as many pages as
      the old direct I/O code did, which means that we will have a better
      batch factor for everything but overwrites of badly fragmented files.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Reviewed-by: NKent Overstreet <kent.overstreet@gmail.com>
      Tested-by: NJens Axboe <axboe@fb.com>
      Reviewed-by: NDarrick J. Wong <darrick.wong@oracle.com>
      Signed-off-by: NDave Chinner <david@fromorbit.com>
      ff6a9292
  8. 10 11月, 2016 1 次提交
  9. 20 10月, 2016 1 次提交
  10. 19 9月, 2016 3 次提交
  11. 29 8月, 2016 1 次提交
  12. 21 6月, 2016 3 次提交