diff options
author | Jan Kara <jack@suse.cz> | 2023-01-03 11:56:56 +0300 |
---|---|---|
committer | Jan Kara <jack@suse.cz> | 2023-01-09 12:39:53 +0300 |
commit | fc8033a34a3ca7d23353e645e6dde5d364ac5f12 (patch) | |
tree | f17c77c027e1a97b04e07d6167d6a707a2b9b5ba /fs/udf/udf_i.h | |
parent | 256fe4162f8b5a1625b8603ca5f7ff79725bfb47 (diff) | |
download | linux-fc8033a34a3ca7d23353e645e6dde5d364ac5f12.tar.xz |
udf: Preserve link count of system files
System files in UDF filesystem have link count 0. To not confuse VFS we
fudge the link count to be 1 when reading such inodes however we forget
to restore the link count of 0 when writing such inodes. Fix that.
CC: stable@vger.kernel.org
Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/udf/udf_i.h')
-rw-r--r-- | fs/udf/udf_i.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/udf/udf_i.h b/fs/udf/udf_i.h index 06ff7006b822..312b7c9ef10e 100644 --- a/fs/udf/udf_i.h +++ b/fs/udf/udf_i.h @@ -44,7 +44,8 @@ struct udf_inode_info { unsigned i_use : 1; /* unallocSpaceEntry */ unsigned i_strat4096 : 1; unsigned i_streamdir : 1; - unsigned reserved : 25; + unsigned i_hidden : 1; /* hidden system inode */ + unsigned reserved : 24; __u8 *i_data; struct kernel_lb_addr i_locStreamdir; __u64 i_lenStreams; |