Re: [patch] mm: speedup in __early_pfn_to_nid

From: Ingo Molnar
Date: Tue Mar 26 2013 - 04:06:03 EST



* Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote:

> On Thu, 21 Mar 2013 19:03:21 +0100 Ingo Molnar <mingo@xxxxxxxxxx> wrote:
>
> > > IMO the local scope is more obvious as this is and should only be
> > > used for caching purposes.
> >
> > It's a pattern we actively avoid in kernel code.
>
> On the contrary, I always encourage people to move the static
> definitions into function scope if possible. So the reader can see the
> identifier's scope without having to search the whole file.
> Unnecessarily giving the identifier file-scope seems weird.

A common solution I use is to move such variables right before the
function itself. That makes the "this function's scope only" aspect pretty
apparent - without the risks of hiding globals amongst local variables.

The other approach is to comment the variables very clearly that they are
really globals as the 'static' keyword is easy to miss while reading
email.

Both solutions are basically just as visible as the solution you prefer -
but more robust.

Anyway, I guess we have to agree to disagree on that, we probably already
spent more energy on discussing this than any worst-case problem the
placement of these variables could ever cause in the future ;-)

Thanks,

Ingo
--
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/