Allow for:

   cxl create-region -d decoderX.Y

...to assume (-m -w $(count of memdevs beneath decoderX.Y))

Signed-off-by: Dan Williams <[email protected]>
---
 cxl/region.c |   16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/cxl/region.c b/cxl/region.c
index aa0735194fa1..c0cf4ab350da 100644
--- a/cxl/region.c
+++ b/cxl/region.c
@@ -227,10 +227,13 @@ static int parse_create_options(struct cxl_ctx *ctx, int 
count,
        }
 
        /*
-        * For all practical purposes, -m is the default target type, but
-        * hold off on actively making that decision until a second target
-        * option is available.
+        * For all practical purposes, -m is the default target type, but hold
+        * off on actively making that decision until a second target option is
+        * available. Unless there are no arguments then just assume memdevs.
         */
+       if (!count)
+               param.memdevs = true;
+
        if (!param.memdevs) {
                log_err(&rl,
                        "must specify option for target object types (-m)\n");
@@ -272,11 +275,8 @@ static int parse_create_options(struct cxl_ctx *ctx, int 
count,
                p->ways = count;
                if (!validate_ways(p, count))
                        return -EINVAL;
-       } else {
-               log_err(&rl,
-                       "couldn't determine interleave ways from options or 
arguments\n");
-               return -EINVAL;
-       }
+       } else
+               p->ways = p->num_memdevs;
 
        if (param.granularity < INT_MAX) {
                if (param.granularity <= 0) {


Reply via email to