diff --git a/WHATS_NEW b/WHATS_NEW index dd3b42fc4..1888cfd02 100644 --- a/WHATS_NEW +++ b/WHATS_NEW @@ -1,5 +1,6 @@ Version 2.02.106 - ==================================== + Don't require --major to be specified when using -My option on kernels > 2.4. Add configure --disable-thin_check_needs_check to support old thin_check. Use thin_check --clear-needs-check-flag by default. Export lvm_even_rand() for controlled provision of random numbers. diff --git a/tools/lvcreate.c b/tools/lvcreate.c index ad003273c..c61246532 100644 --- a/tools/lvcreate.c +++ b/tools/lvcreate.c @@ -804,10 +804,18 @@ static int _read_activation_params(struct lvcreate_params *lp, "--minor when using -My"); return 0; } - if (lp->major == -1) { - log_error("Please specify major number with " - "--major when using -My"); - return 0; + if (!strncmp(cmd->kernel_vsn, "2.4.", 4)) { + if (lp->major == -1) { + log_error("Please specify major number with " + "--major when using -My"); + return 0; + } + } else { + if (lp->major >= 0) + log_warn("Ignoring supplied major number - kernel assigns " + "major numbers dynamically. Using major number %d instead.", + cmd->dev_types->device_mapper_major); + lp->major = cmd->dev_types->device_mapper_major; } if (!major_minor_valid(cmd, vg->fid->fmt, lp->major, lp->minor)) return 0;