[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.1.10.0901051443100.27085@gandalf.stny.rr.com>
Date: Mon, 5 Jan 2009 14:46:19 -0500 (EST)
From: Steven Rostedt <rostedt@...dmis.org>
To: Sam Ravnborg <sam@...nborg.org>
cc: LKML <linux-kernel@...r.kernel.org>,
Steven Rostedt <srostedt@...hat.com>,
Ingo Molnar <mingo@...e.hu>,
"David S. Miller" <davem@...emloft.net>,
sparclinux <sparclinux@...r.kernel.org>
Subject: Re: [PATCH] sparc: make proces_ver_nack a bit more readable
On Mon, 5 Jan 2009, Steven Rostedt wrote:
>
> Impact: clean up
>
> The code in process_ver_nack is a little obfuscated. This change
> makes it a bit more readable by humans. It removes the complex
> if statement and replaces it with a cleaner flow of control.
Note, I do not have a sparc compiler at my disposal, so I was not
able to compile (or boot) test this change.
Here's the original code:
static int process_ver_nack(struct ldc_channel *lp, struct ldc_version
*vp)
{
struct ldc_version *vap;
if ((vp->major == 0 && vp->minor == 0) ||
!(vap = find_by_major(vp->major))) {
return ldc_abort(lp);
} else {
struct ldc_packet *p;
unsigned long new_tail;
p = handshake_compose_ctrl(lp, LDC_INFO, LDC_VERS,
vap, sizeof(*vap),
&new_tail);
if (p)
return send_tx_packet(lp, p, new_tail);
else
return ldc_abort(lp);
}
}
And the new code:
static int process_ver_nack(struct ldc_channel *lp, struct ldc_version
*vp)
{
struct ldc_version *vap;
struct ldc_packet *p;
unsigned long new_tail;
if (vp->major == 0 && vp->minor == 0)
return ldc_abort(lp);
vap = find_by_major(vp->major);
if (!vap)
return ldc_abort(lp);
p = handshake_compose_ctrl(lp, LDC_INFO, LDC_VERS,
vap, sizeof(*vap),
&new_tail);
if (!p)
return ldc_abort(lp);
return send_tx_packet(lp, p, new_tail);
}
This should be binary the same. But as I said, I do not have a sparc
compiler to test.
Thanks,
-- Steve
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists