diff mbox series

[v2,17/19] cxl/pmem: add provider name to cxl pmem dimm attribute group

Message ID 166377438921.430546.5550361331475412529.stgit@djiang5-desk3.ch.intel.com
State Superseded
Headers show
Series Introduce security commands for CXL pmem device | expand

Commit Message

Dave Jiang Sept. 21, 2022, 3:33 p.m. UTC
Add provider name in order to associate cxl test dimm from cxl_test to the
cxl pmem device when going through sysfs for security testing.

Signed-off-by: Dave Jiang <dave.jiang@intel.com>
---
 drivers/cxl/pmem.c |   10 ++++++++++
 1 file changed, 10 insertions(+)

Comments

Jonathan Cameron Nov. 7, 2022, 3:58 p.m. UTC | #1
On Wed, 21 Sep 2022 08:33:09 -0700
Dave Jiang <dave.jiang@intel.com> wrote:

> Add provider name in order to associate cxl test dimm from cxl_test to the
> cxl pmem device when going through sysfs for security testing.

sysfs ABI docs update?

> 
> Signed-off-by: Dave Jiang <dave.jiang@intel.com>
> ---
>  drivers/cxl/pmem.c |   10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/drivers/cxl/pmem.c b/drivers/cxl/pmem.c
> index 9f34f8701b57..cb303edb925d 100644
> --- a/drivers/cxl/pmem.c
> +++ b/drivers/cxl/pmem.c
> @@ -48,6 +48,15 @@ static void unregister_nvdimm(void *nvdimm)
>  	cxl_nvd->bridge = NULL;
>  }
>  
> +static ssize_t provider_show(struct device *dev, struct device_attribute *attr, char *buf)
> +{
> +	struct nvdimm *nvdimm = to_nvdimm(dev);
> +	struct cxl_nvdimm *cxl_nvd = nvdimm_provider_data(nvdimm);
> +
> +	return sysfs_emit(buf, "%s\n", dev_name(&cxl_nvd->dev));
> +}
> +static DEVICE_ATTR_RO(provider);
> +
>  static ssize_t id_show(struct device *dev, struct device_attribute *attr, char *buf)
>  {
>  	struct nvdimm *nvdimm = to_nvdimm(dev);
> @@ -61,6 +70,7 @@ static DEVICE_ATTR_RO(id);
>  
>  static struct attribute *cxl_dimm_attributes[] = {
>  	&dev_attr_id.attr,
> +	&dev_attr_provider.attr,
>  	NULL
>  };
>  
> 
>
Dave Jiang Nov. 7, 2022, 11:46 p.m. UTC | #2
On 11/7/2022 7:58 AM, Jonathan Cameron wrote:
> On Wed, 21 Sep 2022 08:33:09 -0700
> Dave Jiang <dave.jiang@intel.com> wrote:
> 
>> Add provider name in order to associate cxl test dimm from cxl_test to the
>> cxl pmem device when going through sysfs for security testing.
> 
> sysfs ABI docs update?

Should be an entry for nvdimm bus. But seems like there isn't one. Will 
add one in Documentation/ABI/testing/sysfs-bus-nvdimm
> 
>>
>> Signed-off-by: Dave Jiang <dave.jiang@intel.com>
>> ---
>>   drivers/cxl/pmem.c |   10 ++++++++++
>>   1 file changed, 10 insertions(+)
>>
>> diff --git a/drivers/cxl/pmem.c b/drivers/cxl/pmem.c
>> index 9f34f8701b57..cb303edb925d 100644
>> --- a/drivers/cxl/pmem.c
>> +++ b/drivers/cxl/pmem.c
>> @@ -48,6 +48,15 @@ static void unregister_nvdimm(void *nvdimm)
>>   	cxl_nvd->bridge = NULL;
>>   }
>>   
>> +static ssize_t provider_show(struct device *dev, struct device_attribute *attr, char *buf)
>> +{
>> +	struct nvdimm *nvdimm = to_nvdimm(dev);
>> +	struct cxl_nvdimm *cxl_nvd = nvdimm_provider_data(nvdimm);
>> +
>> +	return sysfs_emit(buf, "%s\n", dev_name(&cxl_nvd->dev));
>> +}
>> +static DEVICE_ATTR_RO(provider);
>> +
>>   static ssize_t id_show(struct device *dev, struct device_attribute *attr, char *buf)
>>   {
>>   	struct nvdimm *nvdimm = to_nvdimm(dev);
>> @@ -61,6 +70,7 @@ static DEVICE_ATTR_RO(id);
>>   
>>   static struct attribute *cxl_dimm_attributes[] = {
>>   	&dev_attr_id.attr,
>> +	&dev_attr_provider.attr,
>>   	NULL
>>   };
>>   
>>
>>
>
diff mbox series

Patch

diff --git a/drivers/cxl/pmem.c b/drivers/cxl/pmem.c
index 9f34f8701b57..cb303edb925d 100644
--- a/drivers/cxl/pmem.c
+++ b/drivers/cxl/pmem.c
@@ -48,6 +48,15 @@  static void unregister_nvdimm(void *nvdimm)
 	cxl_nvd->bridge = NULL;
 }
 
+static ssize_t provider_show(struct device *dev, struct device_attribute *attr, char *buf)
+{
+	struct nvdimm *nvdimm = to_nvdimm(dev);
+	struct cxl_nvdimm *cxl_nvd = nvdimm_provider_data(nvdimm);
+
+	return sysfs_emit(buf, "%s\n", dev_name(&cxl_nvd->dev));
+}
+static DEVICE_ATTR_RO(provider);
+
 static ssize_t id_show(struct device *dev, struct device_attribute *attr, char *buf)
 {
 	struct nvdimm *nvdimm = to_nvdimm(dev);
@@ -61,6 +70,7 @@  static DEVICE_ATTR_RO(id);
 
 static struct attribute *cxl_dimm_attributes[] = {
 	&dev_attr_id.attr,
+	&dev_attr_provider.attr,
 	NULL
 };