lkml.org 
[lkml]   [2016]   [Oct]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] staging: dgnc: replace DGNC_VERIFY_BOARD macro
On Fri, Oct 14, 2016 at 07:22:57PM +0200, Fernando Apesteguia wrote:
> The patch replaces the macro with a function (dgnc_get_board) and
> substitutes the macro statement with a call to that function and a
> comparison on the returned value.
>
> This removes a checkpatch warning.
>
> Signed-off-by: Fernando Apesteguia <fernando.apesteguia@gmail.com>
> ---
> drivers/staging/dgnc/dgnc_sysfs.c | 74 +++++++++++++++++++++++++++------------
> 1 file changed, 51 insertions(+), 23 deletions(-)
>
> diff --git a/drivers/staging/dgnc/dgnc_sysfs.c b/drivers/staging/dgnc/dgnc_sysfs.c
> index 290bf6e..3ea23a9 100644
> --- a/drivers/staging/dgnc/dgnc_sysfs.c
> +++ b/drivers/staging/dgnc/dgnc_sysfs.c
> @@ -90,17 +90,21 @@ void dgnc_remove_driver_sysfiles(struct pci_driver *dgnc_driver)
> driver_remove_file(driverfs, &driver_attr_pollrate);
> }
>
> -#define DGNC_VERIFY_BOARD(p, bd) \
> - do { \
> - if (!p) \
> - return 0; \
> - \
> - bd = dev_get_drvdata(p); \
> - if (!bd || bd->magic != DGNC_BOARD_MAGIC) \
> - return 0; \
> - if (bd->state != BOARD_READY) \
> - return 0; \
> - } while (0)
> +static struct dgnc_board *dgnc_get_board(struct device *p)
> +{
> + struct dgnc_board *bd;
> +
> + if (!p)
> + return NULL;
> +
> + bd = dev_get_drvdata(p);
> + if (!bd || bd->magic != DGNC_BOARD_MAGIC)
> + return NULL;
> + if (bd->state != BOARD_READY)
> + return NULL;
> +
> + return bd;
> +}

No, this macro should be removed entirely as what it does is pointless
in some parts, wrong in others, and not needed at all in the rest :(

I've asked others to fix this up properly in the past, but it doesn't
seem like anyone wants to do the work...

I don't want to take this patch as it will hide the real issues here.

thanks,

greg k-h

\
 
 \ /
  Last update: 2016-10-17 10:30    [W:0.072 / U:0.224 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site