diff mbox

cxl: fix coccinelle warnings

Message ID 20161122101327.14281-1-andrew.donnellan@au1.ibm.com (mailing list archive)
State Accepted
Headers show

Commit Message

Andrew Donnellan Nov. 22, 2016, 10:13 a.m. UTC
Fix the following coccinelle warnings:

    drivers/misc/cxl/debugfs.c:46:0-23: WARNING: fops_io_x64 should be
        defined with DEFINE_DEBUGFS_ATTRIBUTE
    drivers/misc/cxl/guest.c:890:5-26: WARNING: Comparison to bool
    drivers/misc/cxl/irq.c:107:3-23: WARNING: Assignment of bool to 0/1
    drivers/misc/cxl/native.c:57:2-3: Unneeded semicolon
    drivers/misc/cxl/native.c:170:2-3: Unneeded semicolon

Signed-off-by: Andrew Donnellan <andrew.donnellan@au1.ibm.com>
---
 drivers/misc/cxl/debugfs.c | 6 ++++--
 drivers/misc/cxl/guest.c   | 2 +-
 drivers/misc/cxl/irq.c     | 2 +-
 drivers/misc/cxl/native.c  | 4 ++--
 4 files changed, 8 insertions(+), 6 deletions(-)

Comments

Frederic Barrat Nov. 22, 2016, 11:32 a.m. UTC | #1
Le 22/11/2016 à 11:13, Andrew Donnellan a écrit :
> Fix the following coccinelle warnings:
>
>     drivers/misc/cxl/debugfs.c:46:0-23: WARNING: fops_io_x64 should be
>         defined with DEFINE_DEBUGFS_ATTRIBUTE
>     drivers/misc/cxl/guest.c:890:5-26: WARNING: Comparison to bool
>     drivers/misc/cxl/irq.c:107:3-23: WARNING: Assignment of bool to 0/1
>     drivers/misc/cxl/native.c:57:2-3: Unneeded semicolon
>     drivers/misc/cxl/native.c:170:2-3: Unneeded semicolon
>
> Signed-off-by: Andrew Donnellan <andrew.donnellan@au1.ibm.com>
> ---

Thanks!

Acked-by: Frederic Barrat <fbarrat@linux.vnet.ibm.com>
Matthew R. Ochs Nov. 22, 2016, 5:03 p.m. UTC | #2
> On Nov 22, 2016, at 4:13 AM, Andrew Donnellan <andrew.donnellan@au1.ibm.com> wrote:
> 
> Fix the following coccinelle warnings:
> 
>    drivers/misc/cxl/debugfs.c:46:0-23: WARNING: fops_io_x64 should be
>        defined with DEFINE_DEBUGFS_ATTRIBUTE
>    drivers/misc/cxl/guest.c:890:5-26: WARNING: Comparison to bool
>    drivers/misc/cxl/irq.c:107:3-23: WARNING: Assignment of bool to 0/1
>    drivers/misc/cxl/native.c:57:2-3: Unneeded semicolon
>    drivers/misc/cxl/native.c:170:2-3: Unneeded semicolon
> 
> Signed-off-by: Andrew Donnellan <andrew.donnellan@au1.ibm.com>

Reviewed-by: Matthew R. Ochs <mrochs@linux.vnet.ibm.com>
Ian Munsie Nov. 23, 2016, 6:49 a.m. UTC | #3
Most of these look fine

> -    return debugfs_create_file(name, mode, parent, (void __force *)value, &fops_io_x64);
> +    return debugfs_create_file_unsafe(name, mode, parent,
> +                      (void __force *)value, &fops_io_x64);

Just wondering what this one is about?

Cheers,
-Ian
Andrew Donnellan Nov. 23, 2016, 7:06 a.m. UTC | #4
On 23/11/16 17:49, Ian Munsie wrote:
> Most of these look fine
>
>> -    return debugfs_create_file(name, mode, parent, (void __force *)value, &fops_io_x64);
>> +    return debugfs_create_file_unsafe(name, mode, parent,
>> +                      (void __force *)value, &fops_io_x64);
>
> Just wondering what this one is about?

See explanation at https://lkml.org/lkml/2016/3/6/75 - when we use 
DEFINE_DEBUGFS_ATTRIBUTE() rather than DEFINE_SIMPLE_ATTRIBUTE(), we 
don't need the "lifetime managing proxy" that debugfs_create_file() sets up.

coccinelle proposed that change based on 
scripts/coccinelle/api/debugfs/debugfs_simple_attr.cocci
Ian Munsie Nov. 23, 2016, 7:32 a.m. UTC | #5
Excerpts from andrew.donnellan's message of 2016-11-23 18:06:59 +1100:
> On 23/11/16 17:49, Ian Munsie wrote:
> > Most of these look fine
> >
> >> -    return debugfs_create_file(name, mode, parent, (void __force *)value, &fops_io_x64);
> >> +    return debugfs_create_file_unsafe(name, mode, parent,
> >> +                      (void __force *)value, &fops_io_x64);
> >
> > Just wondering what this one is about?
> 
> See explanation at https://lkml.org/lkml/2016/3/6/75 - when we use 
> DEFINE_DEBUGFS_ATTRIBUTE() rather than DEFINE_SIMPLE_ATTRIBUTE(), we 
> don't need the "lifetime managing proxy" that debugfs_create_file() sets up.
> 
> coccinelle proposed that change based on 
> scripts/coccinelle/api/debugfs/debugfs_simple_attr.cocci

Thanks, that makes sense :)

Acked-by: Ian Munsie <imunsie@au1.ibm.com>
Michael Ellerman Nov. 25, 2016, 12:04 a.m. UTC | #6
On Tue, 2016-11-22 at 10:13:27 UTC, Andrew Donnellan wrote:
> Fix the following coccinelle warnings:
> 
>     drivers/misc/cxl/debugfs.c:46:0-23: WARNING: fops_io_x64 should be
>         defined with DEFINE_DEBUGFS_ATTRIBUTE
>     drivers/misc/cxl/guest.c:890:5-26: WARNING: Comparison to bool
>     drivers/misc/cxl/irq.c:107:3-23: WARNING: Assignment of bool to 0/1
>     drivers/misc/cxl/native.c:57:2-3: Unneeded semicolon
>     drivers/misc/cxl/native.c:170:2-3: Unneeded semicolon
> 
> Signed-off-by: Andrew Donnellan <andrew.donnellan@au1.ibm.com>
> Acked-by: Frederic Barrat <fbarrat@linux.vnet.ibm.com>
> Reviewed-by: Matthew R. Ochs <mrochs@linux.vnet.ibm.com>
> Acked-by: Ian Munsie <imunsie@au1.ibm.com>

Applied to powerpc next, thanks.

https://git.kernel.org/powerpc/c/3382a6220ff3bac886d9d90766f3fe

cheers
diff mbox

Patch

diff --git a/drivers/misc/cxl/debugfs.c b/drivers/misc/cxl/debugfs.c
index ec7b8a0..9c06ac8 100644
--- a/drivers/misc/cxl/debugfs.c
+++ b/drivers/misc/cxl/debugfs.c
@@ -43,12 +43,14 @@  static int debugfs_io_u64_set(void *data, u64 val)
 	out_be64((u64 __iomem *)data, val);
 	return 0;
 }
-DEFINE_SIMPLE_ATTRIBUTE(fops_io_x64, debugfs_io_u64_get, debugfs_io_u64_set, "0x%016llx\n");
+DEFINE_DEBUGFS_ATTRIBUTE(fops_io_x64, debugfs_io_u64_get, debugfs_io_u64_set,
+			 "0x%016llx\n");
 
 static struct dentry *debugfs_create_io_x64(const char *name, umode_t mode,
 					    struct dentry *parent, u64 __iomem *value)
 {
-	return debugfs_create_file(name, mode, parent, (void __force *)value, &fops_io_x64);
+	return debugfs_create_file_unsafe(name, mode, parent,
+					  (void __force *)value, &fops_io_x64);
 }
 
 void cxl_debugfs_add_adapter_psl_regs(struct cxl *adapter, struct dentry *dir)
diff --git a/drivers/misc/cxl/guest.c b/drivers/misc/cxl/guest.c
index 3e102cd..e04bc4d 100644
--- a/drivers/misc/cxl/guest.c
+++ b/drivers/misc/cxl/guest.c
@@ -887,7 +887,7 @@  static void afu_handle_errstate(struct work_struct *work)
 	    afu_guest->previous_state == H_STATE_PERM_UNAVAILABLE)
 		return;
 
-	if (afu_guest->handle_err == true)
+	if (afu_guest->handle_err)
 		schedule_delayed_work(&afu_guest->work_err,
 				      msecs_to_jiffies(3000));
 }
diff --git a/drivers/misc/cxl/irq.c b/drivers/misc/cxl/irq.c
index dec60f5..1a402bb 100644
--- a/drivers/misc/cxl/irq.c
+++ b/drivers/misc/cxl/irq.c
@@ -104,7 +104,7 @@  irqreturn_t cxl_irq(int irq, struct cxl_context *ctx, struct cxl_irq_info *irq_i
 		} else {
 			spin_lock(&ctx->lock);
 			ctx->afu_err = irq_info->afu_err;
-			ctx->pending_afu_err = 1;
+			ctx->pending_afu_err = true;
 			spin_unlock(&ctx->lock);
 
 			wake_up_all(&ctx->wq);
diff --git a/drivers/misc/cxl/native.c b/drivers/misc/cxl/native.c
index a217a74..fe56d1b 100644
--- a/drivers/misc/cxl/native.c
+++ b/drivers/misc/cxl/native.c
@@ -54,7 +54,7 @@  static int afu_control(struct cxl_afu *afu, u64 command, u64 clear,
 				     AFU_Cntl | command);
 		cpu_relax();
 		AFU_Cntl = cxl_p2n_read(afu, CXL_AFU_Cntl_An);
-	};
+	}
 
 	if (AFU_Cntl & CXL_AFU_Cntl_An_RA) {
 		/*
@@ -167,7 +167,7 @@  int cxl_psl_purge(struct cxl_afu *afu)
 			cpu_relax();
 		}
 		PSL_CNTL = cxl_p1n_read(afu, CXL_PSL_SCNTL_An);
-	};
+	}
 	end = local_clock();
 	pr_devel("PSL purged in %lld ns\n", end - start);