Re: [PATCH 0/4] mm/mempolicy: Add memory hotplug support in weighted interleave

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

 



On Fri, 7 Mar 2025 10:56:04 -0500 Gregory Price <gourry@xxxxxxxxxx> wrote:

Hi Gregory
Thank you for your response regarding this patch.

> On Fri, Mar 07, 2025 at 03:35:29PM +0900, Rakie Kim wrote:
> > Unnecessary sysfs entries: Nodes without memory were included in sysfs
> > at boot.
> > Missing hotplug support: Nodes that became online after initialization
> > were not recognized, causing incomplete interleave configurations.
> 
> This comment is misleading.  Nodes can "come online" but they are
> absolutely detected during init - as nodes cannot be "hotplugged"
> themselves.  Resources can be added *to* nodes, but nodes themselves
> cannot be added or removed.
> 
> I think what you're trying to say here is:
> 
> 1) The current system creates 1 entry per possible node (explicitly)
> 2) Not all nodes may have memory at all times (memory can be hotplugged)
> 3) It would be nice to let sysfs and weighted interleave omit memoryless
>    nodes until those nodes had memory hotplugged into them.
> 
> > Dynamic sysfs updates for hotplugged nodes  New memory nodes are
> > recognized and integrated via the memory hotplug mechanism.
> > Subsequent patches refine this functionality:
> >
> 
> Just going to reiterate that that there's no such this as a hotplug node
> or "new nodes" - only nodes that have their attributes changed (i.e.
> !N_MEMORY -> N_MEMORY).  The node exists, it may just not have anything
> associated with it.
> 
> Maybe semantic nits, but it matters.  The nodes are present and can be
> operated on before memory comes online, and that has implications for
> users.  Depending on how that hardware comes online, it may or may not
> report its performance data prior to memory hotplug.

I agree with your assessment. The existing comments, as you pointed out,
might indeed be confusing or misleading. I'll make sure this issue is
addressed in version 2.

> 
> If it doesn't report its performance data, then hiding the node before
> it hotplugs memory means a user can't pre-configure the system for when
> the memory is added (which could be used immediately).
> 
> Hiding the node until hotplug also means we have hidden state.  We need
> to capture pre-hotplug reported performance data so that if it comes
> online the auto-calculation of weights is correct.  But if the user has
> already switched from auto to manual mode, then a node suddenly
> appearing will have an unknown state.
> 
> This is why I initially chose to just expose N_POSSIBLE entries in
> sysfs, because the transition state causes hidden information - and that
> felt worse than extra entries.  I suppose I should add some
> documentation somewhere that discusses this issue.
> 
> I think the underlying issue you're dealing with is that the system is
> creating more nodes for you than it should.

I will reply to your next comment on this issue soon.

> 
> ~Gregory

Rakie




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

  Powered by Linux