Re: [PATCH] 2/3 mtd: add support for flash on the SEGA Dreamcast Visual Memory Unit

From: JÃrn Engel
Date: Mon Mar 24 2008 - 10:54:58 EST


On Mon, 24 March 2008 14:43:16 +0000, Adrian McMenamin wrote:
>
> Well, I haven't got round to applying them and testing them yet, though
> they look ok, obviously, except for one thing: I'm pretty much where you
> are on the goto versus return thing, but got pretty clear instructions
> on a previous patch from Andrew Morton that using gotos to ensure
> functions limit the number of return points is the way to go.
>
> I've added him back in now we aren't exchanging flames, so maybe he can
> pronouce ex cathedra.

It is a matter of personal taste. Having a single return statement is
nice when using a debugger. One can set a single breakpoint instead of
ten. I guess that is why Andrew prefers it.

I personally don't care much either way and usually pick whatever needs
fewer lines. Main purpose of the patch was to merge the error path with
the good path. In several functions you have

free_this;
free_that;
return 0;

error1:
free_this;
error2:
free_that;
error3:
return error;

Those paths are nearly identical and should be combined. As always,
duplicated code has a tendency to diverge, so in most cases the two
copies have subtle differences. So far I just tackled the easy cases.

JÃrn

--
Joern's library part 8:
http://citeseer.ist.psu.edu/plank97tutorial.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/