Re: [PATCH 14/21] x86, acpi, numa: Reserve hotpluggable memory at early time.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 07/26/2013 06:26 PM, Tejun Heo wrote:
On Fri, Jul 26, 2013 at 11:45:36AM +0800, Tang Chen wrote:
I just don't want to any new variables to store the hotpluggable regions.
But without a new shared variable, it seems difficult to achieve the goal
you said below.

Why can't it be done with the .flags field that was added anyway?

I'm sorry but I'm a little misunderstanding here. There are some more things I
want to confirm, thanks for your patient. :)

By "the goal" above, I mean making ACPI and memblock parts more independent from each other. I think in this patch-set, I called memblock_reserve() which made
these two parts interactive.

So the point is, how to mark the hotpluggable regions and at the same time, make
ACPI and memblock parts independent, right ?

But, please see below.


So how about this.
1. Introduce a new global list used to store hotpluggable regions.
2. On acpi side, find and fulfill the list.
3. On memblock side, make the default allocation function stay away from
    these regions.

I was thinking more along the line of

1. Mark hotpluggable regions with a flag in memblock.
2. On ACPI side, find and mark hotpluggable regions.

But marking hotpluggable regions on ACPI side will also make ACPI and memblock
parts more interactive. In this patch-set, I just called memblock_reserve()
directly on ACPI side.

I think marking hotpluggable regions on ACPI side is much the same as reserving the regions. I will just call something like memblock_mark_flags() to mark the regions. The only difference will be a different memblock_xxx() function call,
right ?

In the last mail, I suggested a global array. So both sides will just use the array, and it seems to be independent. But I think the global array and the flags
in memblock are redundant. They are for the same goal.

Actually I want to use flags. I think it is also useful when we try to put thins
on local node, such as node_data.

So, is it OK to mark the hotpluggable regions on ACPI side ?


3. Make memblock avoid giving out hotpluggable regions for normal
    allocations.

This step3 is different from this patch-set. I reserved hotpluggable regions in
memblock.reserved.

So are you saying mark the hotpluggable regions in memblock.memory, but not
reserve them in memblock.reserved, and make the default allocate function avoid
the hotpluggable regions in memblock.memory ?

This way will be convenient when we put the node_data on local node (don't need
to free regions from memblock.reserved, as you mentioned before), right?

Thanks.

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




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]