On Mon, Dec 09, 2013 at 04:50:41PM -0500, Santosh Shilimkar wrote:
> Introduce memblock memory allocation APIs which allow to support
> PAE or LPAE extension on 32 bits archs where the physical memory
> start address can be beyond 4GB. In such cases, existing bootmem
> APIs which operate on 32 bit addresses won't work and needs
> memblock layer which operates on 64 bit addresses.

The overall API looks good to me.  Thanks for doing this!

> +static void * __init memblock_virt_alloc_internal(
> +                             phys_addr_t size, phys_addr_t align,
> +                             phys_addr_t min_addr, phys_addr_t max_addr,
> +                             int nid)
> +{
> +     phys_addr_t alloc;
> +     void *ptr;
> +
> +     if (nid == MAX_NUMNODES)
> +             pr_warn("%s: usage of MAX_NUMNODES is depricated. Use 
> NUMA_NO_NODE\n",
> +                     __func__);

Why not use WARN_ONCE()?  Also, shouldn't nid be set to NUMA_NO_NODE
here?

...
> +     if (nid != NUMA_NO_NODE) {

Otherwise, the above test is broken.

> +             alloc = memblock_find_in_range_node(size, align, min_addr,
> +                                                 max_addr,  NUMA_NO_NODE);
> +             if (alloc)
> +                     goto done;
> +     }

Thanks.

-- 
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
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