summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Kara <jack@suse.cz>2020-09-21 15:08:50 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-10-17 11:02:20 +0200
commit05408d8fa9617af80d2a3e57dbe9b9a4169efe25 (patch)
tree47c980baef1840d90535d576a6f3005c41b4b527
parentee0085c0aafd932ac51717caa54751ca3de194b3 (diff)
downloadlinux-05408d8fa9617af80d2a3e57dbe9b9a4169efe25.tar.gz
linux-05408d8fa9617af80d2a3e57dbe9b9a4169efe25.tar.bz2
linux-05408d8fa9617af80d2a3e57dbe9b9a4169efe25.zip
reiserfs: Initialize inode keys properly
commit 4443390e08d34d5771ab444f601cf71b3c9634a4 upstream. reiserfs_read_locked_inode() didn't initialize key length properly. Use _make_cpu_key() macro for key initialization so that all key member are properly initialized. CC: stable@vger.kernel.org Reported-by: syzbot+d94d02749498bb7bab4b@syzkaller.appspotmail.com Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--fs/reiserfs/inode.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/fs/reiserfs/inode.c b/fs/reiserfs/inode.c
index 9531b6c18ac7..897154e99380 100644
--- a/fs/reiserfs/inode.c
+++ b/fs/reiserfs/inode.c
@@ -1554,11 +1554,7 @@ void reiserfs_read_locked_inode(struct inode *inode,
* set version 1, version 2 could be used too, because stat data
* key is the same in both versions
*/
- key.version = KEY_FORMAT_3_5;
- key.on_disk_key.k_dir_id = dirino;
- key.on_disk_key.k_objectid = inode->i_ino;
- key.on_disk_key.k_offset = 0;
- key.on_disk_key.k_type = 0;
+ _make_cpu_key(&key, KEY_FORMAT_3_5, dirino, inode->i_ino, 0, 0, 3);
/* look for the object's stat data */
retval = search_item(inode->i_sb, &key, &path_to_sd);