Re: [PATCH 4/4] hugetlb: add hugepages_node= command-line option

From: Luiz Capitulino
Date: Wed Feb 19 2014 - 23:44:55 EST


On Wed, 19 Feb 2014 19:46:41 -0800 (PST)
David Rientjes <rientjes@xxxxxxxxxx> wrote:

> On Wed, 19 Feb 2014, Marcelo Tosatti wrote:
>
> > We agree that, in the future, we'd like to provide the ability to
> > dynamically allocate and free 1GB pages at runtime.
> >
> > Extending the kernel command line interface is a first step.
> >
> > Do you have a concrete objection to that first step ?
> >
>
> Yes, my concrete objection is that the command line interface is
> unnecessary if you can dynamically allocate and free 1GB pages at runtime
> unless memory will be so fragmented that it cannot be done when userspace
> is brought up. That is not your use case, thus this support is not

Yes it is. The early boot is the most reliable moment to allocate huge pages
and we want to take advantage from that.

I would understand your position against this series if it was intrusive
or if it was changing the code in an undesirable way, but the code it adds
is completely self-contained and runs only once at boot. It gives us just
one more choice for huge pages allocation at boot. I don't see the huge
problem here.

> needed. I think Mel also brought up this point.
>
> There's no "first step" about it, this is unnecessary for your use case if
> you can do it at runtime. I'm not sure what's so surprising about this.
>
> > > You can't specify an interleave behavior with Luiz's command line
> > > interface so now we'd have two different interfaces for allocating
> > > hugepage sizes depending on whether you're specifying a node or not.
> > > It's "hugepagesz=1G hugepages=16" vs "hugepage_node=1:16:1G" (and I'd have
> > > to look at previous messages in this thread to see if that means 16 1GB
> > > pages on node 1 or 1 1GB pages on node 16.)
> >
> > What syntax do you prefer and why ?
> >
>
> I'm not sure it's interesting to talk about since this patchset is
> unnecessary if you can do it at runtime, but since "hugepagesz=" and
> "hugepages=" have existed for many kernel releases, we must maintain
> backwards compatibility. Thus, it seems, the easiest addition would have
> been "hugepagesnode=" which I've mentioned several times, there's no
> reason to implement yet another command line option purely as a shorthand
> which hugepage_node=1:2:1G is and in a very cryptic way.
>

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