lkml.org 
[lkml]   [2020]   [Apr]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [PATCH v2 2/2] iio: imu: adis16460: use DEFINE_DEBUGFS_ATTRIBUTE instead of DEFINE_SIMPLE_ATTRIBUTE
On Tue, 31 Mar 2020 15:28:22 +0000
"Sa, Nuno" <Nuno.Sa@analog.com> wrote:

> > From: linux-iio-owner@vger.kernel.org <linux-iio-owner@vger.kernel.org> On
> > Behalf Of Rohit Sarkar
> > Sent: Dienstag, 31. März 2020 13:48
> > To: linux-iio@vger.kernel.org
> > Cc: Bogdan, Dragos <Dragos.Bogdan@analog.com>; Rohit Sarkar
> > <rohitsarkar5398@gmail.com>; Lars-Peter Clausen <lars@metafoo.de>;
> > Hennerich, Michael <Michael.Hennerich@analog.com>; Stefan Popa
> > <stefan.popa@analog.com>; Jonathan Cameron <jic23@kernel.org>; Hartmut
> > Knaack <knaack.h@gmx.de>; Peter Meerwald-Stadler
> > <pmeerw@pmeerw.net>; linux-kernel@vger.kernel.org
> > Subject: [PATCH v2 2/2] iio: imu: adis16460: use
> > DEFINE_DEBUGFS_ATTRIBUTE instead of DEFINE_SIMPLE_ATTRIBUTE
> >
> > debugfs_create_file_unsafe does not protect the fops handed to it
> > against file removal. DEFINE_DEBUGFS_ATTRIBUTE makes the fops aware of
> > the file lifetime and thus protects it against removal.
> >
> > Signed-off-by: Rohit Sarkar <rohitsarkar5398@gmail.com>
> > ---
> > drivers/iio/imu/adis16460.c | 27 +++++++++++++++------------
> > 1 file changed, 15 insertions(+), 12 deletions(-)
> >
> > diff --git a/drivers/iio/imu/adis16460.c b/drivers/iio/imu/adis16460.c
> > index 9539cfe4a259..f96cfd007957 100644
> > --- a/drivers/iio/imu/adis16460.c
> > +++ b/drivers/iio/imu/adis16460.c
> > @@ -87,8 +87,8 @@ static int adis16460_show_serial_number(void *arg,
> > u64 *val)
> >
> > return 0;
> > }
> > -DEFINE_SIMPLE_ATTRIBUTE(adis16460_serial_number_fops,
> > - adis16460_show_serial_number, NULL, "0x%.4llx\n");
> > +DEFINE_DEBUGFS_ATTRIBUTE(adis16460_serial_number_fops,
> > + adis16460_show_serial_number, NULL, "0x%.4llx\n");
> >
> > static int adis16460_show_product_id(void *arg, u64 *val)
> > {
> > @@ -105,8 +105,8 @@ static int adis16460_show_product_id(void *arg, u64
> > *val)
> >
> > return 0;
> > }
> > -DEFINE_SIMPLE_ATTRIBUTE(adis16460_product_id_fops,
> > - adis16460_show_product_id, NULL, "%llu\n");
> > +DEFINE_DEBUGFS_ATTRIBUTE(adis16460_product_id_fops,
> > + adis16460_show_product_id, NULL, "%llu\n");
> >
> > static int adis16460_show_flash_count(void *arg, u64 *val)
> > {
> > @@ -123,19 +123,22 @@ static int adis16460_show_flash_count(void *arg,
> > u64 *val)
> >
> > return 0;
> > }
> > -DEFINE_SIMPLE_ATTRIBUTE(adis16460_flash_count_fops,
> > - adis16460_show_flash_count, NULL, "%lld\n");
> > +DEFINE_DEBUGFS_ATTRIBUTE(adis16460_flash_count_fops,
> > + adis16460_show_flash_count, NULL, "%lld\n");
> >
> > static int adis16460_debugfs_init(struct iio_dev *indio_dev)
> > {
> > struct adis16460 *adis16460 = iio_priv(indio_dev);
> >
> > - debugfs_create_file("serial_number", 0400, indio_dev-
> > >debugfs_dentry,
> > - adis16460, &adis16460_serial_number_fops);
> > - debugfs_create_file("product_id", 0400, indio_dev->debugfs_dentry,
> > - adis16460, &adis16460_product_id_fops);
> > - debugfs_create_file("flash_count", 0400, indio_dev->debugfs_dentry,
> > - adis16460, &adis16460_flash_count_fops);
> > + debugfs_create_file_unsafe("serial_number", 0400,
> > + indio_dev->debugfs_dentry, adis16460,
> > + &adis16460_serial_number_fops);
> > + debugfs_create_file_unsafe("product_id", 0400,
> > + indio_dev->debugfs_dentry, adis16460,
> > + &adis16460_product_id_fops);
> > + debugfs_create_file_unsafe("flash_count", 0400,
> > + indio_dev->debugfs_dentry, adis16460,
> > + &adis16460_flash_count_fops);
> >
> > return 0;
> > }
>
> Tested-by Nuno Sá <nuno.sa@analog.com>
Applied. Thanks,

Jonathan

>
> > --
> > 2.23.0.385.gbc12974a89
>

\
 
 \ /
  Last update: 2020-04-04 17:34    [W:0.041 / U:0.708 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site