Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1672059
| From | Tahsin Erdogan <tahsin@google.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH 13/32] ext4: ext4_xattr_value_same() should return false for external data |
| Date | 2017-06-21 23:30 +0200 |
| Message-ID | <tUVmk-3od-57@gated-at.bofh.it> (permalink) |
| References | <tUVmh-3od-3@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
ext4_xattr_value_same() is used as a quick optimization in case the new
xattr value is identical to the previous value. When xattr value is
stored in a xattr inode the check becomes expensive so it is better to
just assume that they are not equal.
Signed-off-by: Tahsin Erdogan <tahsin@google.com>
---
fs/ext4/xattr.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/fs/ext4/xattr.c b/fs/ext4/xattr.c
index 4dd8be16d175..681a9b5eefd8 100644
--- a/fs/ext4/xattr.c
+++ b/fs/ext4/xattr.c
@@ -1428,6 +1428,9 @@ static int ext4_xattr_value_same(struct ext4_xattr_search *s,
{
void *value;
+ /* When e_value_inum is set the value is stored externally. */
+ if (s->here->e_value_inum)
+ return 0;
if (le32_to_cpu(s->here->e_value_size) != i->value_len)
return 0;
value = ((void *)s->base) + le16_to_cpu(s->here->e_value_offs);
--
2.13.1.611.g7e3b11ae1-goog
Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread
[PATCH 13/32] ext4: ext4_xattr_value_same() should return false for external data Tahsin Erdogan <tahsin@google.com> - 2017-06-21 23:30 +0200 Re: [PATCH 13/32] ext4: ext4_xattr_value_same() should return false for external data Theodore Ts'o <tytso@mit.edu> - 2017-06-22 04:10 +0200
csiph-web