diff options
-rw-r--r-- | sys/kern/vfs_extattr.c | 2 | ||||
-rw-r--r-- | sys/kern/vfs_syscalls.c | 2 | ||||
-rw-r--r-- | sys/kern/vfs_vnops.c | 8 |
3 files changed, 12 insertions, 0 deletions
diff --git a/sys/kern/vfs_extattr.c b/sys/kern/vfs_extattr.c index b83e502..e0045c1 100644 --- a/sys/kern/vfs_extattr.c +++ b/sys/kern/vfs_extattr.c @@ -1745,6 +1745,8 @@ cvtnstat(sb, nsb) nsb->st_blksize = sb->st_blksize; nsb->st_flags = sb->st_flags; nsb->st_gen = sb->st_gen; + nsb->st_qspare[0] = sb->st_qspare[0]; + nsb->st_qspare[1] = sb->st_qspare[1]; } #ifndef _SYS_SYSPROTO_H_ diff --git a/sys/kern/vfs_syscalls.c b/sys/kern/vfs_syscalls.c index b83e502..e0045c1 100644 --- a/sys/kern/vfs_syscalls.c +++ b/sys/kern/vfs_syscalls.c @@ -1745,6 +1745,8 @@ cvtnstat(sb, nsb) nsb->st_blksize = sb->st_blksize; nsb->st_flags = sb->st_flags; nsb->st_gen = sb->st_gen; + nsb->st_qspare[0] = sb->st_qspare[0]; + nsb->st_qspare[1] = sb->st_qspare[1]; } #ifndef _SYS_SYSPROTO_H_ diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c index 663897f..ebe3497 100644 --- a/sys/kern/vfs_vnops.c +++ b/sys/kern/vfs_vnops.c @@ -398,6 +398,14 @@ vn_stat(vp, sb, p) error = VOP_GETATTR(vp, vap, p->p_ucred, p); if (error) return (error); + + /* + * Zero the spare stat fields + */ + sb->st_lspare = 0; + sb->st_qspare[0] = 0; + sb->st_qspare[1] = 0; + /* * Copy from vattr table */ |