Lines Matching full:volume

65  * Per-volume storage limit: 52 bits		4096 TB
83 #define HAMMER_OFF_VOL_MASK 0x0FF0000000000000ULL /* volume portion */
105 * Reserved space for (future) header junk after the volume header.
116 * and volume number in addition to the offset. Most offsets are required
145 * zone 1 (z,v,o): raw volume relative (offset 0 is the volume header)
147 * zone 3 (z,o): undo/redo fifo - fixed zone-2 offset array in volume header
153 * zone 15: unavailable, usually the offset is beyond volume size
156 * Maximum HAMMER filesystem capacity from volume aspect
157 * 2^8(max volumes) * 2^52(max volume size) = 2^60 = 1EB (long offset)
169 * volume#0 layout
171 * | volume header (1928 bytes)
199 * volume#N layout (0<N<256)
201 * | volume header (1928 bytes)
212 * | ... (unused until volume#(N-1) runs out of space)
379 * zone:1 raw volume (no blockmap)
381 * zone:3 undomap (direct layer2 array in volume header)
408 * The freemap uses the upper 8 bits of layer-1 to identify the volume,
507 * HAMMER UNDO parameters. The UNDO fifo is mapped directly in the volume
545 * undo sequence space without having to rely on information from the volume
551 * (1) The volume header no longer needs to be synchronized for most
684 * Volume header types
690 * HAMMER Volume header
693 * device contains a volume header followed by however many buffers fit
694 * into the volume.
696 * One of the volumes making up a HAMMER filesystem is the root volume.
697 * The root volume is always volume #0 which is the first block device path
698 * specified by newfs_hammer(8). All HAMMER volumes have a volume header,
699 * however the root volume may be the only volume that has valid values for
706 * vol_buf_beg - offset of the first buffer in volume
707 * vol_buf_end - offset of volume EOF (on buffer boundary)
717 * volume to generate an actual I/O offset within the block device.
729 * initialize or add a new HAMMER volume.
747 int64_t vol_buf_beg; /* offset of the first buffer in volume */
748 int64_t vol_buf_end; /* offset of volume EOF (on buffer boundary) */
755 int32_t vol_no; /* volume number within filesystem */
760 uint32_t vol_flags; /* volume flags */
761 uint32_t vol_rootvol; /* the root volume number (must be 0) */
767 * volume making up a HAMMER filesystem, but only the root volume
795 #define HAMMER_VOLF_NEEDFLUSH 0x0004 /* volume needs flush */
819 #define hammer_xlate_to_phys(volume, zone2_offset) \ argument
820 ((volume)->vol_buf_beg + HAMMER_OFF_SHORT_ENCODE(zone2_offset))
828 #define hammer_xlate_to_undo(volume, zone3_offset) \ argument
829 ((volume)->vol0_undo_array[HAMMER_UNDO_INDEX(zone3_offset)] + \
833 * Effective per-volume filesystem capacity including big-blocks for layer1/2
835 #define HAMMER_VOL_BUF_SIZE(volume) \ argument
836 ((volume)->vol_buf_end - (volume)->vol_buf_beg)