Re: [RFC:PATCH(003/003)] Memory add to onlined node. (ver. 2) (For x86_64)

From: Yasunori Goto
Date: Thu Feb 09 2006 - 04:50:09 EST



BTW, I have 2 question about x86_64's memory hot-add.

Q1)
> int add_memory(u64 start, u64 size)
> {
> - struct pglist_data *pgdat = NODE_DATA(0);
> - struct zone *zone = pgdat->node_zones + MAX_NR_ZONES-2;

Current code adds memory to ZONE_NORMAL like this.
But, ZONE_DMA32 is available on 2.6.15. So, I'm afraid there are
2 types trouble.

a) When new memory is added to < 4GB, this should be added to
Zone_DMA32.
Are there any real machine which allow to add memory under
4GB?
b) If machine boots up with under 4GB memory, and new memory
is added to over 4GB, then kernel might panic due to Zone Normal's
initialization is imcomplete.

Q2)
Are there any real machine which can add memory with NUMA feature?
Or will be there?
In my patch, I assume that DSDT is defined well for NUMA by firmware.
(Container device, Memory device...).
But, if firmware doesn't define it, my patch is nonsense..
(Oh, I'm silly.....)


--
Yasunori Goto


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