Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1670951 > unrolled thread
| Started by | Jerry Hoemann <jerry.hoemann@hpe.com> |
|---|---|
| First post | 2017-06-20 19:00 +0200 |
| Last post | 2017-06-29 01:40 +0200 |
| Articles | 5 — 2 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
[PATCH v2 5/7] acpi, nfit: Show bus_dsm_mask Jerry Hoemann <jerry.hoemann@hpe.com> - 2017-06-20 19:00 +0200
Re: [PATCH v2 5/7] acpi, nfit: Show bus_dsm_mask Dan Williams <dan.j.williams@intel.com> - 2017-06-28 23:10 +0200
Re: [PATCH v2 5/7] acpi, nfit: Show bus_dsm_mask Jerry Hoemann <jerry.hoemann@hpe.com> - 2017-06-29 01:20 +0200
Re: [PATCH v2 5/7] acpi, nfit: Show bus_dsm_mask Dan Williams <dan.j.williams@intel.com> - 2017-06-29 01:30 +0200
Re: [PATCH v2 5/7] acpi, nfit: Show bus_dsm_mask Dan Williams <dan.j.williams@intel.com> - 2017-06-29 01:40 +0200
| From | Jerry Hoemann <jerry.hoemann@hpe.com> |
|---|---|
| Date | 2017-06-20 19:00 +0200 |
| Subject | [PATCH v2 5/7] acpi, nfit: Show bus_dsm_mask |
| Message-ID | <tUuFr-2G9-9@gated-at.bofh.it> |
Add bus_dsm_mask to sysfs display under /sys/bus/nd/devices/ndbusX/nfit.
Signed-off-by: Jerry Hoemann <jerry.hoemann@hpe.com>
---
drivers/acpi/nfit/core.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/drivers/acpi/nfit/core.c b/drivers/acpi/nfit/core.c
index 9d281a4..f133b3e 100644
--- a/drivers/acpi/nfit/core.c
+++ b/drivers/acpi/nfit/core.c
@@ -928,6 +928,15 @@ static int nfit_mem_init(struct acpi_nfit_desc *acpi_desc)
return 0;
}
+static ssize_t bus_dsm_mask_show(struct device *dev,
+ struct device_attribute *attr, char *buf)
+{
+ struct nvdimm_bus *nvdimm_bus = to_nvdimm_bus(dev);
+ struct nvdimm_bus_descriptor *nd_desc = to_nd_desc(nvdimm_bus);
+ return sprintf(buf, "%#lx\n", nd_desc->bus_dsm_mask);
+}
+static DEVICE_ATTR_RO(bus_dsm_mask);
+
static ssize_t revision_show(struct device *dev,
struct device_attribute *attr, char *buf)
{
@@ -1064,6 +1073,7 @@ static umode_t nfit_visible(struct kobject *kobj, struct attribute *a, int n)
&dev_attr_revision.attr,
&dev_attr_scrub.attr,
&dev_attr_hw_error_scrub.attr,
+ &dev_attr_bus_dsm_mask.attr,
NULL,
};
--
1.8.5.6
[toc] | [next] | [standalone]
| From | Dan Williams <dan.j.williams@intel.com> |
|---|---|
| Date | 2017-06-28 23:10 +0200 |
| Message-ID | <tXsnM-2zA-21@gated-at.bofh.it> |
| In reply to | #1670951 |
On Tue, Jun 20, 2017 at 9:51 AM, Jerry Hoemann <jerry.hoemann@hpe.com> wrote:
> Add bus_dsm_mask to sysfs display under /sys/bus/nd/devices/ndbusX/nfit.
>
> Signed-off-by: Jerry Hoemann <jerry.hoemann@hpe.com>
> ---
> drivers/acpi/nfit/core.c | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/drivers/acpi/nfit/core.c b/drivers/acpi/nfit/core.c
> index 9d281a4..f133b3e 100644
> --- a/drivers/acpi/nfit/core.c
> +++ b/drivers/acpi/nfit/core.c
> @@ -928,6 +928,15 @@ static int nfit_mem_init(struct acpi_nfit_desc *acpi_desc)
> return 0;
> }
>
> +static ssize_t bus_dsm_mask_show(struct device *dev,
> + struct device_attribute *attr, char *buf)
> +{
> + struct nvdimm_bus *nvdimm_bus = to_nvdimm_bus(dev);
> + struct nvdimm_bus_descriptor *nd_desc = to_nd_desc(nvdimm_bus);
> + return sprintf(buf, "%#lx\n", nd_desc->bus_dsm_mask);
> +}
> +static DEVICE_ATTR_RO(bus_dsm_mask);
> +
> static ssize_t revision_show(struct device *dev,
> struct device_attribute *attr, char *buf)
> {
> @@ -1064,6 +1073,7 @@ static umode_t nfit_visible(struct kobject *kobj, struct attribute *a, int n)
> &dev_attr_revision.attr,
> &dev_attr_scrub.attr,
> &dev_attr_hw_error_scrub.attr,
> + &dev_attr_bus_dsm_mask.attr,
> NULL,
> };
I think it's redundant to keep 'bus_' in the name of the attribute
since 'bus' is included in the sysfs path. You can use DEVICE_ATTR()
instead of DEVICE_ATTR_RO() to specify the attribute name manually,
and get around the collision with the existing dsm_mash_show()
routine.
[toc] | [prev] | [next] | [standalone]
| From | Jerry Hoemann <jerry.hoemann@hpe.com> |
|---|---|
| Date | 2017-06-29 01:20 +0200 |
| Message-ID | <tXupz-1Aj-5@gated-at.bofh.it> |
| In reply to | #1677177 |
On Wed, Jun 28, 2017 at 02:07:20PM -0700, Dan Williams wrote:
> On Tue, Jun 20, 2017 at 9:51 AM, Jerry Hoemann <jerry.hoemann@hpe.com> wrote:
> > Add bus_dsm_mask to sysfs display under /sys/bus/nd/devices/ndbusX/nfit.
> >
> > Signed-off-by: Jerry Hoemann <jerry.hoemann@hpe.com>
> > ---
> > drivers/acpi/nfit/core.c | 10 ++++++++++
> > 1 file changed, 10 insertions(+)
> >
> > diff --git a/drivers/acpi/nfit/core.c b/drivers/acpi/nfit/core.c
> > index 9d281a4..f133b3e 100644
> > --- a/drivers/acpi/nfit/core.c
> > +++ b/drivers/acpi/nfit/core.c
> > @@ -928,6 +928,15 @@ static int nfit_mem_init(struct acpi_nfit_desc *acpi_desc)
> > return 0;
> > }
> >
> > +static ssize_t bus_dsm_mask_show(struct device *dev,
> > + struct device_attribute *attr, char *buf)
> > +{
> > + struct nvdimm_bus *nvdimm_bus = to_nvdimm_bus(dev);
> > + struct nvdimm_bus_descriptor *nd_desc = to_nd_desc(nvdimm_bus);
> > + return sprintf(buf, "%#lx\n", nd_desc->bus_dsm_mask);
> > +}
> > +static DEVICE_ATTR_RO(bus_dsm_mask);
> > +
> > static ssize_t revision_show(struct device *dev,
> > struct device_attribute *attr, char *buf)
> > {
> > @@ -1064,6 +1073,7 @@ static umode_t nfit_visible(struct kobject *kobj, struct attribute *a, int n)
> > &dev_attr_revision.attr,
> > &dev_attr_scrub.attr,
> > &dev_attr_hw_error_scrub.attr,
> > + &dev_attr_bus_dsm_mask.attr,
> > NULL,
> > };
>
> I think it's redundant to keep 'bus_' in the name of the attribute
> since 'bus' is included in the sysfs path. You can use DEVICE_ATTR()
> instead of DEVICE_ATTR_RO() to specify the attribute name manually,
> and get around the collision with the existing dsm_mash_show()
> routine.
DEVICE_ATTR and DEVICE_ATTR_RO uses the same tokenization & stringification
schemes, so that doesn't disambiguate. They need to be different
case sensitive names if they are to be in same source file.
Do you want me to change name to root_dsm_mask? or change case: DSM_MASK?
--
-----------------------------------------------------------------------------
Jerry Hoemann Software Engineer Hewlett Packard Enterprise
-----------------------------------------------------------------------------
[toc] | [prev] | [next] | [standalone]
| From | Dan Williams <dan.j.williams@intel.com> |
|---|---|
| Date | 2017-06-29 01:30 +0200 |
| Message-ID | <tXuzf-1Do-1@gated-at.bofh.it> |
| In reply to | #1677264 |
On Wed, Jun 28, 2017 at 4:15 PM, Jerry Hoemann <jerry.hoemann@hpe.com> wrote:
> On Wed, Jun 28, 2017 at 02:07:20PM -0700, Dan Williams wrote:
>> On Tue, Jun 20, 2017 at 9:51 AM, Jerry Hoemann <jerry.hoemann@hpe.com> wrote:
>> > Add bus_dsm_mask to sysfs display under /sys/bus/nd/devices/ndbusX/nfit.
>> >
>> > Signed-off-by: Jerry Hoemann <jerry.hoemann@hpe.com>
>> > ---
>> > drivers/acpi/nfit/core.c | 10 ++++++++++
>> > 1 file changed, 10 insertions(+)
>> >
>> > diff --git a/drivers/acpi/nfit/core.c b/drivers/acpi/nfit/core.c
>> > index 9d281a4..f133b3e 100644
>> > --- a/drivers/acpi/nfit/core.c
>> > +++ b/drivers/acpi/nfit/core.c
>> > @@ -928,6 +928,15 @@ static int nfit_mem_init(struct acpi_nfit_desc *acpi_desc)
>> > return 0;
>> > }
>> >
>> > +static ssize_t bus_dsm_mask_show(struct device *dev,
>> > + struct device_attribute *attr, char *buf)
>> > +{
>> > + struct nvdimm_bus *nvdimm_bus = to_nvdimm_bus(dev);
>> > + struct nvdimm_bus_descriptor *nd_desc = to_nd_desc(nvdimm_bus);
>> > + return sprintf(buf, "%#lx\n", nd_desc->bus_dsm_mask);
>> > +}
>> > +static DEVICE_ATTR_RO(bus_dsm_mask);
>> > +
>> > static ssize_t revision_show(struct device *dev,
>> > struct device_attribute *attr, char *buf)
>> > {
>> > @@ -1064,6 +1073,7 @@ static umode_t nfit_visible(struct kobject *kobj, struct attribute *a, int n)
>> > &dev_attr_revision.attr,
>> > &dev_attr_scrub.attr,
>> > &dev_attr_hw_error_scrub.attr,
>> > + &dev_attr_bus_dsm_mask.attr,
>> > NULL,
>> > };
>>
>> I think it's redundant to keep 'bus_' in the name of the attribute
>> since 'bus' is included in the sysfs path. You can use DEVICE_ATTR()
>> instead of DEVICE_ATTR_RO() to specify the attribute name manually,
>> and get around the collision with the existing dsm_mash_show()
>> routine.
>
> DEVICE_ATTR and DEVICE_ATTR_RO uses the same tokenization & stringification
> schemes, so that doesn't disambiguate. They need to be different
> case sensitive names if they are to be in same source file.
>
> Do you want me to change name to root_dsm_mask? or change case: DSM_MASK?
I'm saying do something like this:
DEVICE_ATTR(dsm_mask, 0444, bus_dsm_mask_show, NULL)
...so that the attribute name in sysfs is just 'dsm_mask'.
[toc] | [prev] | [next] | [standalone]
| From | Dan Williams <dan.j.williams@intel.com> |
|---|---|
| Date | 2017-06-29 01:40 +0200 |
| Message-ID | <tXuIW-1Gz-3@gated-at.bofh.it> |
| In reply to | #1677271 |
On Wed, Jun 28, 2017 at 4:29 PM, Dan Williams <dan.j.williams@intel.com> wrote:
> On Wed, Jun 28, 2017 at 4:15 PM, Jerry Hoemann <jerry.hoemann@hpe.com> wrote:
>> On Wed, Jun 28, 2017 at 02:07:20PM -0700, Dan Williams wrote:
>>> On Tue, Jun 20, 2017 at 9:51 AM, Jerry Hoemann <jerry.hoemann@hpe.com> wrote:
>>> > Add bus_dsm_mask to sysfs display under /sys/bus/nd/devices/ndbusX/nfit.
>>> >
>>> > Signed-off-by: Jerry Hoemann <jerry.hoemann@hpe.com>
>>> > ---
>>> > drivers/acpi/nfit/core.c | 10 ++++++++++
>>> > 1 file changed, 10 insertions(+)
>>> >
>>> > diff --git a/drivers/acpi/nfit/core.c b/drivers/acpi/nfit/core.c
>>> > index 9d281a4..f133b3e 100644
>>> > --- a/drivers/acpi/nfit/core.c
>>> > +++ b/drivers/acpi/nfit/core.c
>>> > @@ -928,6 +928,15 @@ static int nfit_mem_init(struct acpi_nfit_desc *acpi_desc)
>>> > return 0;
>>> > }
>>> >
>>> > +static ssize_t bus_dsm_mask_show(struct device *dev,
>>> > + struct device_attribute *attr, char *buf)
>>> > +{
>>> > + struct nvdimm_bus *nvdimm_bus = to_nvdimm_bus(dev);
>>> > + struct nvdimm_bus_descriptor *nd_desc = to_nd_desc(nvdimm_bus);
>>> > + return sprintf(buf, "%#lx\n", nd_desc->bus_dsm_mask);
>>> > +}
>>> > +static DEVICE_ATTR_RO(bus_dsm_mask);
>>> > +
>>> > static ssize_t revision_show(struct device *dev,
>>> > struct device_attribute *attr, char *buf)
>>> > {
>>> > @@ -1064,6 +1073,7 @@ static umode_t nfit_visible(struct kobject *kobj, struct attribute *a, int n)
>>> > &dev_attr_revision.attr,
>>> > &dev_attr_scrub.attr,
>>> > &dev_attr_hw_error_scrub.attr,
>>> > + &dev_attr_bus_dsm_mask.attr,
>>> > NULL,
>>> > };
>>>
>>> I think it's redundant to keep 'bus_' in the name of the attribute
>>> since 'bus' is included in the sysfs path. You can use DEVICE_ATTR()
>>> instead of DEVICE_ATTR_RO() to specify the attribute name manually,
>>> and get around the collision with the existing dsm_mash_show()
>>> routine.
>>
>> DEVICE_ATTR and DEVICE_ATTR_RO uses the same tokenization & stringification
>> schemes, so that doesn't disambiguate. They need to be different
>> case sensitive names if they are to be in same source file.
>>
>> Do you want me to change name to root_dsm_mask? or change case: DSM_MASK?
>
> I'm saying do something like this:
>
> DEVICE_ATTR(dsm_mask, 0444, bus_dsm_mask_show, NULL)
>
> ...so that the attribute name in sysfs is just 'dsm_mask'.
Actually, you'll need to go further and use __ATTR() directly to
initialize a bus_dsm_mask_attr.
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web