Calculate logical volume size allocation from available volume group extents.
A Logical Volume's actual size is always a whole number of Physical Extents (lvcreate rounds a requested size up to the nearest PE), and it can only be created or extended if the Volume Group has that many extents free. This calculator converts a requested LV size into extents, rounds up to the true allocated size, and checks feasibility against the VG's available free extents — the same math lvextend uses when growing an existing LV.
LV size from extents
LV_size = extents × PE_size; can_extend = VG_free_extents ≥ requested_extents
lvcreate always allocates in whole Physical Extents, so a requested size that isn't an exact multiple of the PE size (commonly 4MB) gets rounded up to the next full extent — the difference is usually a few MB at most and is harmless.
lvcreate or lvextend will fail with an 'insufficient free space' error rather than partially allocating. You'd need to either request a smaller size, add another PV to the VG (vgextend), or free space by shrinking/removing another LV first.
Yes — by default LVM's linear mapping can allocate an LV's extents from any combination of PVs in the VG (contiguous per PV, but the LV as a whole can cross PV boundaries), which is how LVM lets a single logical volume exceed any one physical disk's size.