lkml.org 
[lkml]   [2010]   [Nov]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [7/8,v3] NUMA Hotplug Emulator: extend memory probe interface to support NUMA
    On Wed, 17 Nov 2010, Dave Hansen wrote:

    > > Then, export the amount of memory that is actually physically present in
    > > the e820 but was truncated by mem=
    >
    > I _think_ that's already effectively done in /sys/firmware/memmap.
    >

    Ok.

    It's a little complicated because we don't export each online node's
    physical address range so you have to parse the dmesg to find what nodes
    were allocated at boot and determine how much physically present memory
    you have that's hidden but can be hotplugged using the probe files.

    Adding Aaron Durbin <adurbin@google.com> to the cc because he has a patch
    that exports the physical address range of each node in their sysfs
    directories.

    > > and allow users to hot-add the memory
    > > via the probe interface. Add a writeable 'node' file to offlined memory
    > > section directories and allow it to be changed prior to online.
    >
    > That would work, in theory. But, in practice, we allocate the mem_map[]
    > at probe time. So, we've already effectively picked a node at probe.
    > That was done because the probe is equivalent to the hardware "add"
    > event. Once the hardware where in the address space the memory is, it
    > always also knows the node.
    >
    > But, I guess it also wouldn't be horrible if we just hot-removed and
    > hot-added an offline section if someone did write to a node file like
    > you're suggesting. It might actually exercise some interesting code
    > paths.
    >

    Since the pages are offline you should be able to modify the memmap when
    the 'node' file is written and use populate_memnodemap() since that file
    is only writeable in an offline state.


    \
     
     \ /
      Last update: 2010-11-17 23:47    [W:4.289 / U:0.084 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site