libnvdimm, namespace: make 'resource' attribute only readable by root
authorDan Williams <dan.j.williams@intel.com>
Tue, 26 Sep 2017 18:21:24 +0000 (11:21 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 30 Nov 2017 08:40:54 +0000 (08:40 +0000)
commit c1fb3542074fd0c4d901d778bd52455111e4eb6f upstream.

For the same reason that /proc/iomem returns 0's for non-root readers
and acpi tables are root-only, make the 'resource' attribute for
namespace devices only readable by root. Otherwise we disclose physical
address information.

Fixes: bf9bccc14c05 ("libnvdimm: pmem label sets and namespace instantiation")
Reported-by: Dave Hansen <dave.hansen@linux.intel.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/nvdimm/namespace_devs.c

index 3e4d1e7998dacb13df8638763eb4fa0181e73357..0af988739a06c1195b1335ab29f54d9b9752c591 100644 (file)
@@ -1620,7 +1620,7 @@ static umode_t namespace_visible(struct kobject *kobj,
        if (a == &dev_attr_resource.attr) {
                if (is_namespace_blk(dev))
                        return 0;
-               return a->mode;
+               return 0400;
        }
 
        if (is_namespace_pmem(dev) || is_namespace_blk(dev)) {