It uses lists of ranges separated by colons. :x-y If x is missing, 0 is inserted; if y is missing, the last extent on the device is inserted. Man pages can always be improved with more examples! For +length, try the patch below. Alasdair --- a/tools/toollib.c +++ b/tools/toollib.c @@ -1001,7 +1001,7 @@ static int _parse_pes(struct dm_pool *mem, char *c, struct dm_list *pe_ranges, const char *pvname, uint32_t size) { char *endptr; - uint32_t start, end; + uint32_t start, end, len; /* Default to whole PV */ if (!c) { @@ -1041,7 +1041,16 @@ static int _parse_pes(struct dm_pool *mem, char *c, struct dm_list *pe_ranges, goto error; c = endptr; } + } else if (*c == '+') { /* Length? */ + c++; + if (isdigit(*c)) { + if (!xstrtouint32(c, &endptr, 10, &len)) + goto error; + c = endptr; + end = start + (len ? (len - 1) : 0); + } } + if (*c && *c != ':') goto error; _______________________________________________ linux-lvm mailing list linux-lvm@redhat.com https://www.redhat.com/mailman/listinfo/linux-lvm read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/