xattr.c (a805622a757b6d7f65def4141d29317d8e37b8a1) | xattr.c (8a363970d1dc38c4ec4ad575c862f776f468d057) |
---|---|
1// SPDX-License-Identifier: GPL-2.0 2/* 3 * linux/fs/ext4/xattr.c 4 * 5 * Copyright (C) 2001-2003 Andreas Gruenbacher, <agruen@suse.de> 6 * 7 * Fix by Harrison Xing <harrison@mountainviewdata.com>. 8 * Ext4 code with a lot of help from Eric Jarman <ejarman@acm.org>. --- 370 unchanged lines hidden (view full) --- 379#define EXT4_XATTR_INODE_GET_PARENT(inode) ((__u32)(inode)->i_mtime.tv_sec) 380 381static int ext4_xattr_inode_iget(struct inode *parent, unsigned long ea_ino, 382 u32 ea_inode_hash, struct inode **ea_inode) 383{ 384 struct inode *inode; 385 int err; 386 | 1// SPDX-License-Identifier: GPL-2.0 2/* 3 * linux/fs/ext4/xattr.c 4 * 5 * Copyright (C) 2001-2003 Andreas Gruenbacher, <agruen@suse.de> 6 * 7 * Fix by Harrison Xing <harrison@mountainviewdata.com>. 8 * Ext4 code with a lot of help from Eric Jarman <ejarman@acm.org>. --- 370 unchanged lines hidden (view full) --- 379#define EXT4_XATTR_INODE_GET_PARENT(inode) ((__u32)(inode)->i_mtime.tv_sec) 380 381static int ext4_xattr_inode_iget(struct inode *parent, unsigned long ea_ino, 382 u32 ea_inode_hash, struct inode **ea_inode) 383{ 384 struct inode *inode; 385 int err; 386 |
387 inode = ext4_iget(parent->i_sb, ea_ino); | 387 inode = ext4_iget(parent->i_sb, ea_ino, EXT4_IGET_NORMAL); |
388 if (IS_ERR(inode)) { 389 err = PTR_ERR(inode); 390 ext4_error(parent->i_sb, 391 "error while reading EA inode %lu err=%d", ea_ino, 392 err); 393 return err; 394 } 395 --- 1081 unchanged lines hidden (view full) --- 1477 1478 ea_data = ext4_kvmalloc(value_len, GFP_NOFS); 1479 if (!ea_data) { 1480 mb_cache_entry_put(ea_inode_cache, ce); 1481 return NULL; 1482 } 1483 1484 while (ce) { | 388 if (IS_ERR(inode)) { 389 err = PTR_ERR(inode); 390 ext4_error(parent->i_sb, 391 "error while reading EA inode %lu err=%d", ea_ino, 392 err); 393 return err; 394 } 395 --- 1081 unchanged lines hidden (view full) --- 1477 1478 ea_data = ext4_kvmalloc(value_len, GFP_NOFS); 1479 if (!ea_data) { 1480 mb_cache_entry_put(ea_inode_cache, ce); 1481 return NULL; 1482 } 1483 1484 while (ce) { |
1485 ea_inode = ext4_iget(inode->i_sb, ce->e_value); | 1485 ea_inode = ext4_iget(inode->i_sb, ce->e_value, 1486 EXT4_IGET_NORMAL); |
1486 if (!IS_ERR(ea_inode) && 1487 !is_bad_inode(ea_inode) && 1488 (EXT4_I(ea_inode)->i_flags & EXT4_EA_INODE_FL) && 1489 i_size_read(ea_inode) == value_len && 1490 !ext4_xattr_inode_read(ea_inode, ea_data, value_len) && 1491 !ext4_xattr_inode_verify_hashes(ea_inode, NULL, ea_data, 1492 value_len) && 1493 !memcmp(value, ea_data, value_len)) { --- 1651 unchanged lines hidden --- | 1487 if (!IS_ERR(ea_inode) && 1488 !is_bad_inode(ea_inode) && 1489 (EXT4_I(ea_inode)->i_flags & EXT4_EA_INODE_FL) && 1490 i_size_read(ea_inode) == value_len && 1491 !ext4_xattr_inode_read(ea_inode, ea_data, value_len) && 1492 !ext4_xattr_inode_verify_hashes(ea_inode, NULL, ea_data, 1493 value_len) && 1494 !memcmp(value, ea_data, value_len)) { --- 1651 unchanged lines hidden --- |