FreeBSD Bugzilla – Attachment 250535 Details for
Bug 276002
nfscl: data corruption using both copy_file_range and mmap'd I/O
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Call vnode_pager_clean_sync() before ncl_meta_setsize() in nfs_setattr
setattr-mmap.patch (text/plain), 773 bytes, created by
Rick Macklem
on 2024-05-08 22:32:19 UTC
(
hide
)
Description:
Call vnode_pager_clean_sync() before ncl_meta_setsize() in nfs_setattr
Filename:
MIME Type:
Creator:
Rick Macklem
Created:
2024-05-08 22:32:19 UTC
Size:
773 bytes
patch
obsolete
>--- nfs_clvnops.c.mmap-bug 2024-05-07 16:27:28.144351000 -0700 >+++ nfs_clvnops.c 2024-05-07 16:35:57.646535000 -0700 >@@ -1051,11 +1051,13 @@ nfs_setattr(struct vop_setattr_args *ap) > int error = 0; > u_quad_t tsize; > struct timespec ts; >+ vm_object_t obj; > > #ifndef nolint > tsize = (u_quad_t)0; > #endif > >+ ASSERT_VOP_ELOCKED(vp, "nfs_setattr"); > /* > * Setting of flags and marking of atimes are not supported. > */ >@@ -1105,6 +1107,9 @@ nfs_setattr(struct vop_setattr_args *ap) > NFSLOCKNODE(np); > tsize = np->n_size; > NFSUNLOCKNODE(np); >+ if ((obj = vp->v_object) != NULL && >+ vm_object_mightbedirty(obj)) >+ vnode_pager_clean_sync(vp); > error = ncl_meta_setsize(vp, td, vap->va_size); > NFSLOCKNODE(np); > if (np->n_flag & NMODIFIED) {
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 276002
:
247343
|
247346
|
247360
|
247424
|
248653
|
248770
|
248807
|
249298
| 250535