diff options
author | Dan Williams <dan.j.williams@intel.com> | 2018-03-21 17:06:23 -0400 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2018-03-21 17:06:23 -0400 |
commit | 896196dc4e419a9d0782404e0befac17d638fc01 (patch) | |
tree | 4508afcf4dc40f6cdfdb4c1c4b0db58f1cb9ce06 | |
parent | dc9e0a9347e932e3fd3cd03e7ff241022ed6ea8a (diff) |
libnvdimm, region: hide persistence_domain when unknown
Similar to other region attributes, do not emit the persistence_domain
attribute if its contents are empty.
Fixes: 96c3a239054a ("libnvdimm: expose platform persistence attr...")
Cc: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Ross Zwisler <ross.zwisler@linux.intel.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
-rw-r--r-- | drivers/nvdimm/region_devs.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/nvdimm/region_devs.c b/drivers/nvdimm/region_devs.c index e6d01911e092..a8e9d428c0a5 100644 --- a/drivers/nvdimm/region_devs.c +++ b/drivers/nvdimm/region_devs.c | |||
@@ -593,6 +593,13 @@ static umode_t region_visible(struct kobject *kobj, struct attribute *a, int n) | |||
593 | return 0; | 593 | return 0; |
594 | } | 594 | } |
595 | 595 | ||
596 | if (a == &dev_attr_persistence_domain.attr) { | ||
597 | if ((nd_region->flags & (BIT(ND_REGION_PERSIST_CACHE) | ||
598 | | BIT(ND_REGION_PERSIST_MEMCTRL))) == 0) | ||
599 | return 0; | ||
600 | return a->mode; | ||
601 | } | ||
602 | |||
596 | if (a != &dev_attr_set_cookie.attr | 603 | if (a != &dev_attr_set_cookie.attr |
597 | && a != &dev_attr_available_size.attr) | 604 | && a != &dev_attr_available_size.attr) |
598 | return a->mode; | 605 | return a->mode; |