Messages in this thread | | | Date | Sat, 5 Aug 2017 22:50:42 -0400 | From | Theodore Ts'o <> | Subject | Re: [PATCH] ext4: inplace xattr block update fails to deduplicate blocks |
| |
On Sat, Jul 15, 2017 at 02:49:05AM -0700, Andreas Dilger wrote: > On Jul 14, 2017, at 5:25 PM, Tahsin Erdogan <tahsin@google.com> wrote: > > > > When an xattr block has a single reference, block is updated inplace > > and it is reinserted to the cache. Later, a cache lookup is performed > > to see whether an existing block has the same contents. This cache > > lookup will most of the time return the just inserted entry so > > deduplication is not achieved. > > > > Running the following test script will produce two xattr blocks which > > can be observed in "File ACL: " line of debugfs output: > > > > mke2fs -b 1024 -I 128 -F -O extent /dev/sdb 1G > > mount /dev/sdb /mnt/sdb > > > > touch /mnt/sdb/{x,y} > > > > setfattr -n user.1 -v aaa /mnt/sdb/x > > setfattr -n user.2 -v bbb /mnt/sdb/x > > > > setfattr -n user.1 -v aaa /mnt/sdb/y > > setfattr -n user.2 -v bbb /mnt/sdb/y > > > > debugfs -R 'stat x' /dev/sdb | cat > > debugfs -R 'stat y' /dev/sdb | cat > > > > This patch defers the reinsertion to the cache so that we can locate > > other blocks with the same contents. > > > > Signed-off-by: Tahsin Erdogan <tahsin@google.com> > > Reviewed-by: Andreas Dilger <adilger@dilger.ca>
Thanks, applied.
- Ted
| |