1CXL-CREATE-REGION(1)                                      CXL-CREATE-REGION(1)
2
3
4

NAME

6       cxl-create-region - Assemble a CXL region by setting up attributes of
7       its constituent CXL memdevs.
8

SYNOPSIS

10       cxl create-region [<options>]
11

DESCRIPTION

13       A CXL region is composed of one or more slices of CXL memdevs, with
14       configurable interleave settings - both the number of interleave ways,
15       and the interleave granularity.
16
17       For create-region, a size can optionally be specified, but if not, the
18       maximum possible size for each memdev will be used up to the available
19       decode capacity in the system for the given memory type. For persistent
20       regions a UUID can optionally be specified, but if not, one will be
21       generated.
22
23       If the region-creation operation is successful, a region object will be
24       emitted on stdout in JSON format (see examples). If the specified
25       arguments cannot be satisfied with a legal configuration, then an
26       appropriate error will be emitted on stderr.
27

EXAMPLE

29           #cxl create-region -m -d decoder0.1 -w 2 -g 1024 mem0 mem1
30           {
31             "region":"region0",
32             "resource":"0xc90000000",
33             "size":"512.00 MiB (536.87 MB)",
34             "interleave_ways":2,
35             "interleave_granularity":1024,
36             "mappings":[
37               {
38                 "position":1,
39                 "decoder":"decoder4.0"
40               },
41               {
42                 "position":0,
43                 "decoder":"decoder3.0"
44               }
45             ]
46           }
47           created 1 region
48

OPTIONS

50       <target(s)>
51           The CXL targets that should be used to form the region. The number
52           of target arguments must match the --ways option (if provided).
53
54       -b, --bus=
55           Restrict the operation to the specified bus.
56
57       -m, --memdevs
58           Indicate that the non-option arguments for target(s) refer to
59           memdev device names. If this option is omitted and no targets are
60           specified then create-region uses the equivalent of cxl list -M -d
61           $decoder internally as the target list. Note that depending on the
62           topology, for example with switches, the automatic target list
63           ordering may not be valid and manual specification of the target
64           list is required.
65
66       -s, --size=
67           Specify the total size for the new region. This is optional, and by
68           default, the maximum possible size will be used. The maximum
69           possible size is gated by both the contiguous free HPA space
70           remaining in the root decoder, and the available DPA space in the
71           component memdevs.
72
73       -t, --type=
74           Specify the region type - pmem or ram. Default to root decoder
75           capability, and if that is ambiguous, default to pmem.
76
77       -U, --uuid=
78           Specify a UUID for the new region. This shouldn’t usually need to
79           be specified, as one will be generated by default. Only applicable
80           to pmem regions.
81
82       -w, --ways=
83           The number of interleave ways for the new region’s interleave. This
84           should be equal to the number of memdevs specified in --memdevs, if
85           --memdevs is being supplied. If --ways is not specified, it will be
86           determined based on the number of memdev targets provided.
87
88       -g, --granularity=
89           The interleave granularity for the new region. Must match the
90           selected root decoder’s (if provided) granularity. If the root
91           decoder is interleaved across more than one host-bridge then this
92           value must match that granularity. Otherwise, for non-interleaved
93           decode windows, any granularity can be specified as long as all
94           devices support that setting.
95
96       -d, --decoder=
97           The root decoder that the region should be created under. If not
98           supplied, the first cross-host bridge (if available), decoder that
99           supports the largest interleave will be chosen.
100
101       -u, --human
102           By default the command will output machine-friendly raw-integer
103           data. Instead, with this flag, numbers representing storage size
104           will be formatted as human readable strings with units, other
105           fields are converted to hexadecimal strings.
106
107       --debug
108           Turn on additional debug messages including library debug.
109
111       Copyright © 2016 - 2022, Intel Corporation. License GPLv2: GNU GPL
112       version 2 http://gnu.org/licenses/gpl.html. This is free software: you
113       are free to change and redistribute it. There is NO WARRANTY, to the
114       extent permitted by law.
115

SEE ALSO

117       linkcxl:cxl-list[1],
118
119
120
121                                  08/03/2023              CXL-CREATE-REGION(1)
Impressum