diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2021-05-03 00:13:46 +0300 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2021-05-03 00:13:46 +0300 |
commit | 9ccce092fc64d19504fa54de4fd659e279cc92e7 (patch) | |
tree | 050c91cf4d884d9feb27c1074c3f73cab4f5bbf8 /fs/file.c | |
parent | 27787ba3fa4904422b3928b898d1bd3d74d98bea (diff) | |
parent | 211f9f2e0503efa4023a46920e7ad07377b4ec58 (diff) | |
download | linux-9ccce092fc64d19504fa54de4fd659e279cc92e7.tar.xz |
Merge tag 'for-linus-5.13-ofs-1' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux
Pull orangefs updates from Mike Marshall:
"orangefs: implement orangefs_readahead
mm/readahead.c/read_pages was quite a bit different back when I put my
open-coded readahead logic into orangefs_readpage. That logic seemed
to work as designed back then, it is a trainwreck now.
This implements orangefs_readahead using the new xarray and
readahead_expand features and removes all my open-coded readahead
logic.
This results in an extreme read performance improvement, these sample
numbers are from my test VM:
Here's an example of what's upstream in
5.11.8-200.fc33.x86_64:
30+0 records in
30+0 records out
125829120 bytes (126 MB, 120 MiB) copied, 5.77943 s, 21.8 MB/s
And here's this version of orangefs_readahead on top of 5.12.0-rc4:
30+0 records in
30+0 records out
125829120 bytes (126 MB, 120 MiB) copied, 0.325919 s, 386 MB/s
There are four xfstest regressions with this patch. David Howells and
Matthew Wilcox have been helping me work with this code"
* tag 'for-linus-5.13-ofs-1' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux:
orangefs: leave files in the page cache for a few micro seconds at least
Orangef: implement orangefs_readahead.
Diffstat (limited to 'fs/file.c')
0 files changed, 0 insertions, 0 deletions