Re: [PATCH v2 00/18] Initial conversion of NFS basic I/O to use folios

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> On Jan 24, 2023, at 11:07, Olga Kornievskaia <aglo@xxxxxxxxx> wrote:
> 
> On Fri, Jan 20, 2023 at 12:10 AM <trondmy@xxxxxxxxxx> wrote:
>> 
>> From: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
>> 
>> This set of patches represents an initial effort to convert the page
>> cache I/O in the NFS client to use native folio functionality. It should
>> allow the nfs_page structs and their helpers to carry folios (including
>> folios of order > 0) and to pass their data contents through to the RPC
>> layer.
>> Note that because O_DIRECT uses pages, we still need to support the
>> traditional page based I/O, and so the new struct nfs_page will carry
>> both types.
>> I did not touch the fscache code, but I expect that to be able to
>> continue to work with order 0 folios.
>> 
>> The plan is to merge this functionality with order 0 folios first, in
>> order to catch any regressions in existing functionality. Then we can
>> enable order n > 0 once we're happy about the stability (at least for
>> the non-fscache case).
>> 
>> At this point, the xfstests are all passing without any regressions on
>> my setup, so I'm throwing the patches over the fence to allow for wider
>> testing.
>> Please make sure, in particular to test pNFS if your server supports it.
>> I didn't have to make any changes to the pNFS code, and I don't expect
>> any trouble, but it would be good to have validation of that assumption.
> 
> Here's my experience with running with these patches running thru
> xfstest's quick group:
> Against a linux server: takes about a couple of minutes longer to run
> with folio patches (48m with folio, 45 without) but that's just from 1
> run with and and without.
> 
> Against an ontap server (so pnfs case):  total time is higher with
> patches: I have a difference of 47m with folio and 38m without.
> 
> While I don't believe this is related to folio patches but I need to
> increase my vm's size to 4g to have a successful run of xfstest. Tests
> generic/531 and generic/460 are problematic with 2G. generic/531 leads
> to oom-killer and generic/460 hangs.


Hmm… Does the performance climb back to normal if you revert the patch 21f5ae90169b ("NFS: fix up nfs_release_folio() to try to release the page”)? That’s the only one I can think of that does more than just convert from struct page -> struct folio.

_________________________________
Trond Myklebust
Linux NFS client maintainer, Hammerspace
trond.myklebust@xxxxxxxxxxxxxxx





[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux