Add chunk uuids and update multi-device back references
commit951fd7371c5719f0491e0a8a524cf5be43729412
authorChris Mason <chris.mason@oracle.com>
Tue, 15 Apr 2008 19:42:08 +0000 (15 15:42 -0400)
committerDavid Woodhouse <dwmw2@hera.kernel.org>
Tue, 15 Apr 2008 19:42:08 +0000 (15 15:42 -0400)
tree9930eafb1f6d38600e101c3c965b6a6723254000
parent7e7628ec4ebec9a5046025b4a139d55ac3a69d49
Add chunk uuids and update multi-device back references

Block headers now store the chunk tree uuid

Chunk items records the device uuid for each stripes

Device extent items record better back refs to the chunk tree

Block groups record better back refs to the chunk tree

The chunk tree format has also changed.  The objectid of BTRFS_CHUNK_ITEM_KEY
used to be the logical offset of the chunk.  Now it is a chunk tree id,
with the logical offset being stored in the offset field of the key.

This allows a single chunk tree to record multiple logical address spaces,
upping the number of bytes indexed by a chunk tree from 2^64 to
2^128.
ctree.c
ctree.h
disk-io.c
extent-tree.c
mkfs.c
print-tree.c
utils.c
volumes.c
volumes.h