]> git.baikalelectronics.ru Git - kernel.git/commit
Btrfs: introduce free_extent_buffer_stale
authorJosef Bacik <josef@redhat.com>
Fri, 9 Mar 2012 21:01:49 +0000 (16:01 -0500)
committerChris Mason <chris.mason@oracle.com>
Mon, 26 Mar 2012 20:51:08 +0000 (16:51 -0400)
commit1e08c39d2277dbe183ef619e722f7591a79f4123
tree0265021499da54e5b4667a041f8b82c6d1a8667e
parentb58e030d88e77c5227cd9f0e43494eeb2272bbf7
Btrfs: introduce free_extent_buffer_stale

Because btrfs cow's we can end up with extent buffers that are no longer
necessary just sitting around in memory.  So instead of evicting these pages, we
could end up evicting things we actually care about.  Thus we have
free_extent_buffer_stale for use when we are freeing tree blocks.  This will
make it so that the ref for the eb being in the radix tree is dropped as soon as
possible and then is freed when the refcount hits 0 instead of waiting to be
released by releasepage.  Thanks,

Signed-off-by: Josef Bacik <josef@redhat.com>
fs/btrfs/ctree.c
fs/btrfs/disk-io.c
fs/btrfs/extent-tree.c
fs/btrfs/extent_io.c
fs/btrfs/extent_io.h