Page MenuHomeFreeBSD

Fix VOP_PUTPAGES(9) in regards to the use of VM_PAGER_CLUSTER_OK
ClosedPublic

Authored by khng on Jun 19 2019, 8:04 AM.
Tags
None
Referenced Files
F156860967: D20695.id59147.diff
Sat, May 16, 11:10 PM
F156860956: D20695.id59195.diff
Sat, May 16, 11:10 PM
F156860954: D20695.id58785.diff
Sat, May 16, 11:10 PM
F156860920: D20695.id58784.diff
Sat, May 16, 11:10 PM
F156859807: D20695.diff
Sat, May 16, 11:01 PM
Unknown Object (File)
Thu, May 7, 3:16 PM
Unknown Object (File)
Thu, May 7, 2:10 PM
Unknown Object (File)
Thu, May 7, 11:02 AM
Subscribers

Details

Summary

By reading the implementation of vnode_pager_putpages_ioflags() and
vnode_pager_generic_putpages(), if VM_PAGER_CLUSTER_OK is not set write
may be performed asynchronously.

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 24931
Build 23656: arc lint + arc unit

Event Timeline

Doing asynchronous writes prevents clustering. The correct fix is to say:

If
.Dv VM_PAGER_CLUSTER_OK
is set, writes may be delayed so that related writes
can be coalesced for efficiency, e.g.,
This revision now requires changes to proceed.Jun 27 2019, 9:09 PM
  • Updated according to @mckusick 's suggestion
This revision is now accepted and ready to land.Jun 29 2019, 2:49 AM

I'll take care of this and also bump the .Dd field.