summaryrefslogtreecommitdiffstats
path: root/fs/super.c
diff options
context:
space:
mode:
authorLiu Bo <bo.li.liu@oracle.com>2013-01-29 03:18:40 +0000
committerChris Mason <chris.mason@fusionio.com>2013-02-20 18:06:09 -0500
commit38c227d87c49ad5d173cb5d4374d49acec6a495d (patch)
treee68e689e44508cea68bf51928d864cd19f12e09d /fs/super.c
parent86db25785a6e7cacc1ee868fe437e8a2957eae94 (diff)
downloadblackbird-op-linux-38c227d87c49ad5d173cb5d4374d49acec6a495d.tar.gz
blackbird-op-linux-38c227d87c49ad5d173cb5d4374d49acec6a495d.zip
Btrfs: snapshot-aware defrag
This comes from one of btrfs's project ideas, As we defragment files, we break any sharing from other snapshots. The balancing code will preserve the sharing, and defrag needs to grow this as well. Now we're able to fill the blank with this patch, in which we make full use of backref walking stuff. Here is the basic idea, o set the writeback ranges started by defragment with flag EXTENT_DEFRAG o at endio, after we finish updating fs tree, we use backref walking to find all parents of the ranges and re-link them with the new COWed file layout by adding corresponding backrefs. Signed-off-by: Li Zefan <lizf@cn.fujitsu.com> Signed-off-by: Liu Bo <bo.li.liu@oracle.com> Signed-off-by: Chris Mason <chris.mason@fusionio.com>
Diffstat (limited to 'fs/super.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud