zfs/module
Antonio Russo 8829ba19b7 Set file mode during zfs_write
3d40b65 refactored zfs_vnops.c, which shared much code verbatim between
Linux and BSD.  After a successful write, the suid/sgid bits are reset,
and the mode to be written is stored in newmode.  On Linux, this was
propagated to both the in-memory inode and znode, which is then updated
with sa_update.

3d40b65 accidentally removed the initialization of newmode, which
happened to occur on the same line as the inode update (which has been
moved out of the function).

The uninitialized newmode can be saved to disk, leading to a crash on
stat() of that file, in addition to a merely incorrect file mode.

Reviewed-by: Ryan Moeller <ryan@ixsystems.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Antonio Russo <aerusso@aerusso.net>
Closes #11474 
Closes #11576
2021-02-08 09:20:38 -08:00
..
avl Links in Source Files 2020-09-03 16:17:18 -07:00
icp ICP: gcm: Allocate hash subkey table separately 2020-10-30 16:06:09 -07:00
lua lua: avoid gcc -Wreturn-local-addr bug 2020-12-23 14:34:59 -08:00
nvpair Links in Source Files 2020-09-03 16:17:18 -07:00
os Fix zrele race in zrele_async that can cause hang 2021-01-28 11:39:13 -08:00
spl Cleanup linux module kbuild files 2020-06-10 09:24:15 -07:00
unicode Throw const on some strings 2020-10-16 12:55:56 -07:00
zcommon Linux 5.10 compat: use iov_iter in uio structure 2020-12-23 14:35:39 -08:00
zfs Set file mode during zfs_write 2021-02-08 09:20:38 -08:00
zstd Optimize locking checks in mempool allocator 2020-11-03 09:51:10 -08:00
.gitignore Cleanup linux module kbuild files 2020-06-10 09:24:15 -07:00
Kbuild.in Add zstd support to zfs 2020-08-20 10:30:06 -07:00
Makefile.bsd Share zfs_fsync, zfs_read, zfs_write, et al between Linux and FreeBSD 2020-12-23 14:34:59 -08:00
Makefile.in Fix Linux modules uninstall 2020-10-16 13:01:14 -07:00