mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-11-11 00:45:13 +00:00
libnvdimm: introduce 'flags' attribute for DIMM 'lock' and 'alias' status
Given that we now how have two mechanisms for a DIMM to indicate that it
is locked:
* NVDIMM_FAMILY_INTEL 'get_config_size' _DSM command
* ACPI 6.2 Label Storage Read / Write commands
...export the generic libnvdimm DIMM status in a new 'flags' attribute.
This attribute can also reflect the 'alias' state which indicates
whether the nvdimm core is enforcing labels for aliased-region-capacity
that the given dimm is an interleave-set member.
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
This commit is contained in:
parent
4b27db7e26
commit
efbf6f50ad
1 changed files with 12 additions and 0 deletions
|
|
@ -331,6 +331,17 @@ static ssize_t commands_show(struct device *dev,
|
||||||
}
|
}
|
||||||
static DEVICE_ATTR_RO(commands);
|
static DEVICE_ATTR_RO(commands);
|
||||||
|
|
||||||
|
static ssize_t flags_show(struct device *dev,
|
||||||
|
struct device_attribute *attr, char *buf)
|
||||||
|
{
|
||||||
|
struct nvdimm *nvdimm = to_nvdimm(dev);
|
||||||
|
|
||||||
|
return sprintf(buf, "%s%s\n",
|
||||||
|
test_bit(NDD_ALIASING, &nvdimm->flags) ? "alias " : "",
|
||||||
|
test_bit(NDD_LOCKED, &nvdimm->flags) ? "lock " : "");
|
||||||
|
}
|
||||||
|
static DEVICE_ATTR_RO(flags);
|
||||||
|
|
||||||
static ssize_t state_show(struct device *dev, struct device_attribute *attr,
|
static ssize_t state_show(struct device *dev, struct device_attribute *attr,
|
||||||
char *buf)
|
char *buf)
|
||||||
{
|
{
|
||||||
|
|
@ -372,6 +383,7 @@ static DEVICE_ATTR_RO(available_slots);
|
||||||
|
|
||||||
static struct attribute *nvdimm_attributes[] = {
|
static struct attribute *nvdimm_attributes[] = {
|
||||||
&dev_attr_state.attr,
|
&dev_attr_state.attr,
|
||||||
|
&dev_attr_flags.attr,
|
||||||
&dev_attr_commands.attr,
|
&dev_attr_commands.attr,
|
||||||
&dev_attr_available_slots.attr,
|
&dev_attr_available_slots.attr,
|
||||||
NULL,
|
NULL,
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue