Adjust va_mask for setattr. FreeBSD doesn't have va_mask, so we initialize it
based on individual fields beeing set. This doesn't work for setattr replay, because va_type is set there, so we add AT_TYPE flag to va_mask, which won't be accepted by zfs_setattr(). Reported by: kris
This commit is contained in:
parent
3080596e7f
commit
5750956634
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=170044
@ -3355,6 +3355,7 @@ zfs_freebsd_setattr(ap)
|
||||
return (EOPNOTSUPP);
|
||||
|
||||
vattr_init_mask(vap);
|
||||
vap->va_mask &= ~AT_NOSET;
|
||||
|
||||
return (zfs_setattr(ap->a_vp, vap, 0, ap->a_cred, NULL));
|
||||
}
|
||||
|
@ -3355,6 +3355,7 @@ zfs_freebsd_setattr(ap)
|
||||
return (EOPNOTSUPP);
|
||||
|
||||
vattr_init_mask(vap);
|
||||
vap->va_mask &= ~AT_NOSET;
|
||||
|
||||
return (zfs_setattr(ap->a_vp, vap, 0, ap->a_cred, NULL));
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user