A filer converts a traditional volume to a flexible volume by: creating an
aggregate on storage devices other than the storage devices of the
traditional volume; on the aggregate, creating a flexible volume large
enough to store metadata describing files residing on the traditional
volume; on the flexible volume, creating metadata structures that
describe the files of the traditional volume, except that the metadata
indicates that data blocks and indirect blocks are absent and must be
fetched from another location. As the filer handles I/O requests directed
to the flexible volume, the filer calculates physical volume block number
(PVBN) addresses where the requested blocks would be located in the
aggregate and replaces the absent pointers with the calculated addresses.
After the absent pointers have been replaced, the filer adds the storage
devices of the traditional volume.