Btrfs: Split the extent_map code into two parts

There is now extent_map for mapping offsets in the file to disk and
extent_io for state tracking, IO submission and extent_bufers.

The new extent_map code shifts from [start,end] pairs to [start,len], and
pushes the locking out into the caller.  This allows a few performance
optimizations and is easier to use.

A number of extent_map usage bugs were fixed, mostly with failing
to remove extent_map entries when changing the file.

Signed-off-by: Chris Mason <chris.mason@oracle.com>
This commit is contained in:
Chris Mason
2008-01-24 16:13:08 -05:00
parent 5f56406aab
commit d1310b2e0c
14 changed files with 3614 additions and 3415 deletions

3089
fs/btrfs/extent_io.c Normal file

File diff suppressed because it is too large Load Diff