Page MenuHomeFreeBSD

nfs client: block vnode_pager_setsize() calls from nfscl_loadattrcache in nfs_write
ClosedPublic

Authored by kib on Jan 23 2021, 10:54 AM.
Tags
None
Referenced Files
F98518716: D28306.diff
Thu, Oct 3, 4:47 PM
Unknown Object (File)
Wed, Oct 2, 6:15 AM
Unknown Object (File)
Sat, Sep 28, 10:27 PM
Unknown Object (File)
Fri, Sep 27, 10:27 PM
Unknown Object (File)
Thu, Sep 26, 4:55 PM
Unknown Object (File)
Tue, Sep 24, 3:33 PM
Unknown Object (File)
Sun, Sep 22, 7:56 PM
Unknown Object (File)
Sat, Sep 21, 9:21 PM
Subscribers

Details

Summary

Otherwise writing thread might wait on sbusy state of the pages which were busied by itself, similarly to nfs_read(). But also we need to clear NVNSETSZKSIP flag possibly set by ncl_pager_setsize(), to not undo extension done by write.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

kib requested review of this revision.Jan 23 2021, 10:54 AM
kib created this revision.

I ran the 29 NFS tests I have with D28306.82766.diff. This was a 2 1/2 hour test.
No problems seen.

Looks fine to me, although I'll admit that I
do not really understand the vnode_pager_setsize()
stuff well enough to say whether or not this is correct?

This revision is now accepted and ready to land.Jan 23 2021, 2:49 PM