Re: [PATCH 6/9] ser_gigaset: checkpatch cleanup
From: Joe Perches <joe@perches.com>
Date: 2009-10-27 00:14:52
Also in:
lkml
On Tue, 2009-10-27 at 00:59 +0100, Tilman Schmidt wrote:
Am 26.10.2009 01:54 schrieb Joe Perches:quoted
On Sun, 2009-10-25 at 20:30 +0100, Tilman Schmidt wrote:quoted
Duly uglified as demanded by checkpatch.pl.diff --git a/drivers/isdn/gigaset/ser-gigaset.c b/drivers/isdn/gigaset/ser-gigaset.c index 3071a52..ac3409e 100644 --- a/drivers/isdn/gigaset/ser-gigaset.c +++ b/drivers/isdn/gigaset/ser-gigaset.c@@ -164,9 +164,15 @@ static void gigaset_modem_fill(unsigned long data) { struct cardstate *cs = (struct cardstate *) data; struct bc_state *bcs; + struct sk_buff *nextskb; int sent = 0; - if (!cs || !(bcs = cs->bcs)) { + if (!cs) { + gig_dbg(DEBUG_OUTPUT, "%s: no cardstate", __func__); + return; + } + bcs = cs->bcs; + if (!bcs) { gig_dbg(DEBUG_OUTPUT, "%s: no cardstate", __func__); return;}perhaps: if (!cs || !cs->bcs) { gig_dbg(DEBUG_OUTPUT, "%s: no cardstate", __func__); return; } bcs = cs->bcs;That would evaluate cs->bcs twice, and is also, in my experience, significantly more prone to easily overlooked typos which result in checking a different pointer in the if statement than the one that's actually used in the subsequent assignment.
The other is to duplicate the gig_dbg function as you've done. Also prone to typos and more code as well.
quoted
quoted
@@ -404,16 +412,20 @@ static void gigaset_device_release(struct device *dev) static int gigaset_initcshw(struct cardstate *cs) { int rc; + struct ser_cardstate *scs; - if (!(cs->hw.ser = kzalloc(sizeof(struct ser_cardstate), GFP_KERNEL))) { + scs = kzalloc(sizeof(struct ser_cardstate), GFP_KERNEL); + if (!scs) { pr_err("out of memory\n"); return 0; } + cs->hw.ser = scs;Why not no temporary and just: cs->hw.ser = kzalloc... if (!cs->hw.ser)For the same reasons as above.
I believe the checkpatch recommended form is:
foo = func();
if ([!]foo) {
handle_error()...
}
as you've used in all the other conversions.
No big deal or difference, but I think what I
suggested is more kernel style normal.
cheers, Joe