Re: [PATCH] Fix sparsemem on Cell

Dave Hansen
2006-12-18T23:16:23Z

On Mon, 2006-12-18 at 23:54 +0100, Arnd Bergmann wrote:
> #ifndef __HAVE_ARCH_MEMMAP_INIT
> #define memmap_init(size, nid, zone, start_pfn) \
> - memmap_init_zone((size), (nid), (zone), (start_pfn))
> + memmap_init_zone((size), (nid), (zone), (start_pfn), 1)
> #endif

This is what I was thinking of. Sometimes I find these kinds of calls a
bit annoying:

foo(0, 1, 1, 0, 99, 22)

It only takes a minute to look up what all of the numbers do, but that
is one minute too many. :)

How about an enum, or a pair of #defines?

enum context
{
EARLY,
HOTPLUG
};
extern void memmap_init_zone(unsigned long, int, unsigned long, unsigned long,
enum call_context);
...

So, the call I quoted above would become:

memmap_init_zone((size), (nid), (zone), (start_pfn), EARLY)

-- Dave