Hello,

On Tue, Aug 27, 2013 at 05:37:37PM +0800, Tang Chen wrote:
> 1. Make memblock be able to allocate memory from low address to high address.
>    Also introduce low limit to prevent memblock allocating memory too low.
> 
> 2. Improve init_mem_mapping() to support allocate page tables from low 
> address 
>    to high address.
> 
> 3. Introduce "movablenode" boot option to enable and disable this 
> functionality.
> 
> PS: Reordering of relocate_initrd() and reserve_crashkernel() has not been 
> done 
>     yet. acpi_initrd_override() needs to access initrd with virtual address. 
> So 
>     relocate_initrd() must be done before acpi_initrd_override().

I'm expectedly happier with this approach but some overall review
points.

* I think patch splitting went a bit too far.  e.g. it doesn't make
  much sense or helps anything to split "introduction of a param" from
  "the param doing something".

* I think it's a lot more complex than necessary.  Just implement a
  single function - memblock_alloc_bottom_up(@start) where specifying
  MEMBLOCK_ALLOC_ANYWHERE restores top down behavior and do
  memblock_alloc_bottom_up(end_of_kernel) early during boot.  If the
  bottom up mode is set, just try allocating bottom up from the
  specified address and if that fails do normal top down allocation.
  No need to meddle with the callers.  The only change necessary
  (well, aside from the reordering) outside memblock is adding two
  calls to the above function.

* I don't think "order" is the right word here.  "direction" probably
  fits a lot better.

Thanks.

-- 
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to