dir.c (36af5f407bbb2da6dd9809dd6f173dd377b57d74) | dir.c (dcbb4c10e6d9693cc9d6fa493b4d130b66a60c7d) |
---|---|
1// SPDX-License-Identifier: GPL-2.0 2/* 3 * fs/f2fs/dir.c 4 * 5 * Copyright (c) 2012 Samsung Electronics Co., Ltd. 6 * http://www.samsung.com/ 7 */ 8#include <linux/fs.h> --- 204 unchanged lines hidden (view full) --- 213 214 if (npages == 0) { 215 *res_page = NULL; 216 goto out; 217 } 218 219 max_depth = F2FS_I(dir)->i_current_depth; 220 if (unlikely(max_depth > MAX_DIR_HASH_DEPTH)) { | 1// SPDX-License-Identifier: GPL-2.0 2/* 3 * fs/f2fs/dir.c 4 * 5 * Copyright (c) 2012 Samsung Electronics Co., Ltd. 6 * http://www.samsung.com/ 7 */ 8#include <linux/fs.h> --- 204 unchanged lines hidden (view full) --- 213 214 if (npages == 0) { 215 *res_page = NULL; 216 goto out; 217 } 218 219 max_depth = F2FS_I(dir)->i_current_depth; 220 if (unlikely(max_depth > MAX_DIR_HASH_DEPTH)) { |
221 f2fs_msg(F2FS_I_SB(dir)->sb, KERN_WARNING, 222 "Corrupted max_depth of %lu: %u", 223 dir->i_ino, max_depth); | 221 f2fs_warn(F2FS_I_SB(dir), "Corrupted max_depth of %lu: %u", 222 dir->i_ino, max_depth); |
224 max_depth = MAX_DIR_HASH_DEPTH; 225 f2fs_i_depth_write(dir, max_depth); 226 } 227 228 for (level = 0; level < max_depth; level++) { 229 *res_page = NULL; 230 de = find_in_level(dir, level, fname, res_page); 231 if (de || IS_ERR(*res_page)) --- 579 unchanged lines hidden (view full) --- 811 812 de_name.name = d->filename[bit_pos]; 813 de_name.len = le16_to_cpu(de->name_len); 814 815 /* check memory boundary before moving forward */ 816 bit_pos += GET_DENTRY_SLOTS(le16_to_cpu(de->name_len)); 817 if (unlikely(bit_pos > d->max || 818 le16_to_cpu(de->name_len) > F2FS_NAME_LEN)) { | 223 max_depth = MAX_DIR_HASH_DEPTH; 224 f2fs_i_depth_write(dir, max_depth); 225 } 226 227 for (level = 0; level < max_depth; level++) { 228 *res_page = NULL; 229 de = find_in_level(dir, level, fname, res_page); 230 if (de || IS_ERR(*res_page)) --- 579 unchanged lines hidden (view full) --- 810 811 de_name.name = d->filename[bit_pos]; 812 de_name.len = le16_to_cpu(de->name_len); 813 814 /* check memory boundary before moving forward */ 815 bit_pos += GET_DENTRY_SLOTS(le16_to_cpu(de->name_len)); 816 if (unlikely(bit_pos > d->max || 817 le16_to_cpu(de->name_len) > F2FS_NAME_LEN)) { |
819 f2fs_msg(sbi->sb, KERN_WARNING, 820 "%s: corrupted namelen=%d, run fsck to fix.", 821 __func__, le16_to_cpu(de->name_len)); | 818 f2fs_warn(sbi, "%s: corrupted namelen=%d, run fsck to fix.", 819 __func__, le16_to_cpu(de->name_len)); |
822 set_sbi_flag(sbi, SBI_NEED_FSCK); 823 err = -EINVAL; 824 goto out; 825 } 826 827 if (IS_ENCRYPTED(d->inode)) { 828 int save_len = fstr->len; 829 --- 118 unchanged lines hidden --- | 820 set_sbi_flag(sbi, SBI_NEED_FSCK); 821 err = -EINVAL; 822 goto out; 823 } 824 825 if (IS_ENCRYPTED(d->inode)) { 826 int save_len = fstr->len; 827 --- 118 unchanged lines hidden --- |