Re: [PATCH part5 0/7] Arrange hotpluggable memory as ZONE_MOVABLE.

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

 



On 08/12/2013 10:50 PM, Tejun Heo wrote:
Hello,
......

I think it's in a much better shape than before but there still are a
couple things bothering me.

* Why can't it be opportunistic?  It's silly, for example, to fail
   boot because ACPI tells the kernel that all memory is hotpluggable
   especially as there'd be plenty of memory sitting around doing
   nothing and failing to boot is one of the most grave failure mode.
   The HOTPLUG flag can be advisory, right?  Try to allocate
   !hotpluggable memory first, but if that fails, ignore it and
   allocate from anywhere, much like the try_nid allocations.


Then there is no way to tell the users which memory is hotpluggable.

phys addr is not user friendly. For users, node or memory device is the
best. The firmware should arrange the hotpluggable ranges well.

In my opinion, maybe some application layer tools may use SRAT to show
the users which memory is hotpluggable. I just think both of the kernel
and the application layer should obey the same rule.

* Similar to the point hpa raised.  If this can be made opportunistic,
   do we need the strict reordering to discover things earlier?
   Shouldn't it be possible to configure memblock to allocate close to
   the kernel image until hotplug and numa information is available?
   For most sane cases, the memory allocated will be contained in
   non-hotpluggable node anyway and in case they aren't hotplug
   wouldn't work but the system will boot and function perfectly fine.

So far as I know, the kernel image and related data can be loaded
anywhere, above 4GB. I just can't make any assumption.

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]