diff mbox series

[v2] SCSI: fcoe: convert to use BUS_ATTR_WO

Message ID 20190122142735.GB18225@kroah.com (mailing list archive)
State Mainlined
Commit 573d8884f89b1e1d8cce3e17763b2e61b1cdb4fb
Headers show
Series [v2] SCSI: fcoe: convert to use BUS_ATTR_WO | expand

Commit Message

Greg KH Jan. 22, 2019, 2:27 p.m. UTC
We are trying to get rid of BUS_ATTR() and the usage of that in the fcoe
driver can be trivially converted to use BUS_ATTR_WO(), so use that
instead.

Cc: Johannes Thumshirn <jth@kernel.org>
Cc: "James E.J. Bottomley" <jejb@linux.vnet.ibm.com>
Cc: "Martin K. Petersen" <martin.petersen@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
v2: Made simpler with wrapper functions to call the "real" show/store
    functions, thanks to James for the idea.
    Removed the EXPORT_SYMBOL() removal line, that belongs in a separate
    patch

 drivers/scsi/fcoe/fcoe_sysfs.c | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

Comments

Hannes Reinecke Jan. 26, 2019, 10:26 a.m. UTC | #1
On 1/22/19 3:27 PM, Greg Kroah-Hartman wrote:
> We are trying to get rid of BUS_ATTR() and the usage of that in the fcoe
> driver can be trivially converted to use BUS_ATTR_WO(), so use that
> instead.
> 
> Cc: Johannes Thumshirn <jth@kernel.org>
> Cc: "James E.J. Bottomley" <jejb@linux.vnet.ibm.com>
> Cc: "Martin K. Petersen" <martin.petersen@oracle.com>
> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> ---
> v2: Made simpler with wrapper functions to call the "real" show/store
>      functions, thanks to James for the idea.
>      Removed the EXPORT_SYMBOL() removal line, that belongs in a separate
>      patch
> 
>   drivers/scsi/fcoe/fcoe_sysfs.c | 15 +++++++++++++--
>   1 file changed, 13 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/scsi/fcoe/fcoe_sysfs.c b/drivers/scsi/fcoe/fcoe_sysfs.c
> index 5c8310bade61..c3dcbdc3aa64 100644
> --- a/drivers/scsi/fcoe/fcoe_sysfs.c
> +++ b/drivers/scsi/fcoe/fcoe_sysfs.c
> @@ -671,8 +671,19 @@ static const struct device_type fcoe_fcf_device_type = {
>   	.release = fcoe_fcf_device_release,
>   };
>   
> -static BUS_ATTR(ctlr_create, S_IWUSR, NULL, fcoe_ctlr_create_store);
> -static BUS_ATTR(ctlr_destroy, S_IWUSR, NULL, fcoe_ctlr_destroy_store);
> +static ssize_t ctlr_create_store(struct bus_type *bus, const char *buf,
> +				 size_t count)
> +{
> +	return fcoe_ctlr_create_store(bus, buf, count);
> +}
> +static BUS_ATTR_WO(ctlr_create);
> +
> +static ssize_t ctlr_destroy_store(struct bus_type *bus, const char *buf,
> +				  size_t count)
> +{
> +	return fcoe_ctlr_destroy_store(bus, buf, count);
> +}
> +static BUS_ATTR_WO(ctlr_destroy);
>   
>   static struct attribute *fcoe_bus_attrs[] = {
>   	&bus_attr_ctlr_create.attr,
> 
Why not renaming the functions and drop the wrapper?

Cheers,

Hannes
Greg KH Jan. 26, 2019, 10:39 a.m. UTC | #2
On Sat, Jan 26, 2019 at 11:26:47AM +0100, Hannes Reinecke wrote:
> On 1/22/19 3:27 PM, Greg Kroah-Hartman wrote:
> > We are trying to get rid of BUS_ATTR() and the usage of that in the fcoe
> > driver can be trivially converted to use BUS_ATTR_WO(), so use that
> > instead.
> > 
> > Cc: Johannes Thumshirn <jth@kernel.org>
> > Cc: "James E.J. Bottomley" <jejb@linux.vnet.ibm.com>
> > Cc: "Martin K. Petersen" <martin.petersen@oracle.com>
> > Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > ---
> > v2: Made simpler with wrapper functions to call the "real" show/store
> >      functions, thanks to James for the idea.
> >      Removed the EXPORT_SYMBOL() removal line, that belongs in a separate
> >      patch
> > 
> >   drivers/scsi/fcoe/fcoe_sysfs.c | 15 +++++++++++++--
> >   1 file changed, 13 insertions(+), 2 deletions(-)
> > 
> > diff --git a/drivers/scsi/fcoe/fcoe_sysfs.c b/drivers/scsi/fcoe/fcoe_sysfs.c
> > index 5c8310bade61..c3dcbdc3aa64 100644
> > --- a/drivers/scsi/fcoe/fcoe_sysfs.c
> > +++ b/drivers/scsi/fcoe/fcoe_sysfs.c
> > @@ -671,8 +671,19 @@ static const struct device_type fcoe_fcf_device_type = {
> >   	.release = fcoe_fcf_device_release,
> >   };
> > -static BUS_ATTR(ctlr_create, S_IWUSR, NULL, fcoe_ctlr_create_store);
> > -static BUS_ATTR(ctlr_destroy, S_IWUSR, NULL, fcoe_ctlr_destroy_store);
> > +static ssize_t ctlr_create_store(struct bus_type *bus, const char *buf,
> > +				 size_t count)
> > +{
> > +	return fcoe_ctlr_create_store(bus, buf, count);
> > +}
> > +static BUS_ATTR_WO(ctlr_create);
> > +
> > +static ssize_t ctlr_destroy_store(struct bus_type *bus, const char *buf,
> > +				  size_t count)
> > +{
> > +	return fcoe_ctlr_destroy_store(bus, buf, count);
> > +}
> > +static BUS_ATTR_WO(ctlr_destroy);
> >   static struct attribute *fcoe_bus_attrs[] = {
> >   	&bus_attr_ctlr_create.attr,
> > 
> Why not renaming the functions and drop the wrapper?

I did that in v1 of this patch, but people complained I was messing up
their function namespace :)

thanks,

greg k-h
Hannes Reinecke Jan. 26, 2019, 10:40 a.m. UTC | #3
On 1/26/19 11:39 AM, Greg Kroah-Hartman wrote:
> On Sat, Jan 26, 2019 at 11:26:47AM +0100, Hannes Reinecke wrote:
>> On 1/22/19 3:27 PM, Greg Kroah-Hartman wrote:
>>> We are trying to get rid of BUS_ATTR() and the usage of that in the fcoe
>>> driver can be trivially converted to use BUS_ATTR_WO(), so use that
>>> instead.
>>>
>>> Cc: Johannes Thumshirn <jth@kernel.org>
>>> Cc: "James E.J. Bottomley" <jejb@linux.vnet.ibm.com>
>>> Cc: "Martin K. Petersen" <martin.petersen@oracle.com>
>>> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
>>> ---
>>> v2: Made simpler with wrapper functions to call the "real" show/store
>>>       functions, thanks to James for the idea.
>>>       Removed the EXPORT_SYMBOL() removal line, that belongs in a separate
>>>       patch
>>>
>>>    drivers/scsi/fcoe/fcoe_sysfs.c | 15 +++++++++++++--
>>>    1 file changed, 13 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/drivers/scsi/fcoe/fcoe_sysfs.c b/drivers/scsi/fcoe/fcoe_sysfs.c
>>> index 5c8310bade61..c3dcbdc3aa64 100644
>>> --- a/drivers/scsi/fcoe/fcoe_sysfs.c
>>> +++ b/drivers/scsi/fcoe/fcoe_sysfs.c
>>> @@ -671,8 +671,19 @@ static const struct device_type fcoe_fcf_device_type = {
>>>    	.release = fcoe_fcf_device_release,
>>>    };
>>> -static BUS_ATTR(ctlr_create, S_IWUSR, NULL, fcoe_ctlr_create_store);
>>> -static BUS_ATTR(ctlr_destroy, S_IWUSR, NULL, fcoe_ctlr_destroy_store);
>>> +static ssize_t ctlr_create_store(struct bus_type *bus, const char *buf,
>>> +				 size_t count)
>>> +{
>>> +	return fcoe_ctlr_create_store(bus, buf, count);
>>> +}
>>> +static BUS_ATTR_WO(ctlr_create);
>>> +
>>> +static ssize_t ctlr_destroy_store(struct bus_type *bus, const char *buf,
>>> +				  size_t count)
>>> +{
>>> +	return fcoe_ctlr_destroy_store(bus, buf, count);
>>> +}
>>> +static BUS_ATTR_WO(ctlr_destroy);
>>>    static struct attribute *fcoe_bus_attrs[] = {
>>>    	&bus_attr_ctlr_create.attr,
>>>
>> Why not renaming the functions and drop the wrapper?
> 
> I did that in v1 of this patch, but people complained I was messing up
> their function namespace :)
> 
Sigh.

Okay, then.

Reviewed-by: Hannes Reinecke <hare@suse.com>

Cheers,

Hannes
Martin K. Petersen Jan. 29, 2019, 5:30 a.m. UTC | #4
Greg,

> We are trying to get rid of BUS_ATTR() and the usage of that in the
> fcoe driver can be trivially converted to use BUS_ATTR_WO(), so use
> that instead.

Applied to 5.1/scsi-queue, thanks!
diff mbox series

Patch

diff --git a/drivers/scsi/fcoe/fcoe_sysfs.c b/drivers/scsi/fcoe/fcoe_sysfs.c
index 5c8310bade61..c3dcbdc3aa64 100644
--- a/drivers/scsi/fcoe/fcoe_sysfs.c
+++ b/drivers/scsi/fcoe/fcoe_sysfs.c
@@ -671,8 +671,19 @@  static const struct device_type fcoe_fcf_device_type = {
 	.release = fcoe_fcf_device_release,
 };
 
-static BUS_ATTR(ctlr_create, S_IWUSR, NULL, fcoe_ctlr_create_store);
-static BUS_ATTR(ctlr_destroy, S_IWUSR, NULL, fcoe_ctlr_destroy_store);
+static ssize_t ctlr_create_store(struct bus_type *bus, const char *buf,
+				 size_t count)
+{
+	return fcoe_ctlr_create_store(bus, buf, count);
+}
+static BUS_ATTR_WO(ctlr_create);
+
+static ssize_t ctlr_destroy_store(struct bus_type *bus, const char *buf,
+				  size_t count)
+{
+	return fcoe_ctlr_destroy_store(bus, buf, count);
+}
+static BUS_ATTR_WO(ctlr_destroy);
 
 static struct attribute *fcoe_bus_attrs[] = {
 	&bus_attr_ctlr_create.attr,