Skip to contentSkip to conversation

N_NORMAL on NUMA?

DISCUSSION Nishanth Aravamudan 2 participants 2 messages Feb 21, 2014 – Feb 24, 2014 Memory management

lore
Share & tools
lore
#0 lore raw

I'm confused by the following:

/*
* Array of node states.
*/
nodemask_t node_states[NR_NODE_STATES] __read_mostly = {
[N_POSSIBLE] = NODE_MASK_ALL, [N_ONLINE] = { { [0] = 1UL } },

#ifndef CONFIG_NUMA
        [N_NORMAL_MEMORY] = { { [0] = 1UL } },
#ifdef CONFIG_HIGHMEM
        [N_HIGH_MEMORY] = { { [0] = 1UL } },
#endif
#ifdef CONFIG_MOVABLE_NODE
        [N_MEMORY] = { { [0] = 1UL } },
#endif
        [N_CPU] = { { [0] = 1UL } },

#endif /* NUMA */
};

Why are we checking for CONFIG_MOVABLE_NODE above when mm/Kconfig says:

config MOVABLE_NODE
boolean "Enable to assign a node which has only movable memory" depends on HAVE_MEMBLOCK
depends on NO_BOOTMEM
depends on X86_64
depends on NUMA

? Doesn't that mean that you can't have CONFIG_HAVE_MOVABLE_NODE without CONFIG_NUMA? But we're in a #ifndef CONFIG_NUMA block above...

Thanks,
Nish

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to [email protected]. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"[email protected]"> [email protected] </a>

#1 lore raw
Quoted 29 lines · Nishanth Aravamudan

I'm confused by the following:

/*
* Array of node states.
*/
nodemask_t node_states[NR_NODE_STATES] __read_mostly = {
[N_POSSIBLE] = NODE_MASK_ALL, [N_ONLINE] = { { [0] = 1UL } },

#ifndef CONFIG_NUMA
        [N_NORMAL_MEMORY] = { { [0] = 1UL } },
#ifdef CONFIG_HIGHMEM
        [N_HIGH_MEMORY] = { { [0] = 1UL } },
#endif
#ifdef CONFIG_MOVABLE_NODE
        [N_MEMORY] = { { [0] = 1UL } },
#endif
        [N_CPU] = { { [0] = 1UL } },

#endif /* NUMA */
};

Why are we checking for CONFIG_MOVABLE_NODE above when mm/Kconfig says:

config MOVABLE_NODE
boolean "Enable to assign a node which has only movable memory" depends on HAVE_MEMBLOCK
depends on NO_BOOTMEM
depends on X86_64
depends on NUMA

Quoted 2 lines

? Doesn't that mean that you can't have CONFIG_HAVE_MOVABLE_NODE without CONFIG_NUMA? But we're in a #ifndef CONFIG_NUMA block above...

Looks like a useless definition that can be removed then.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to [email protected]. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"[email protected]"> [email protected] </a>