lkml.org 
[lkml]   [2004]   [Apr]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [Lhms-devel] Re: [patch 0/3] memory hotplug prototype
On Wed, Apr 07, 2004 at 11:12:55AM -0700, Martin J. Bligh wrote:
> > This is an updated version of memory hotplug prototype patch, which I
> > have posted here several times.
>
> I really, really suggest you take a look at Dave McCracken's work, which
> he posted as "Basic nonlinear for x86" recently. It's going to be much
> much easier to use this abstraction than creating 1000s of zones ...
>

I agree. However, one could argue that taking a zone offline is 'easier'
than taking a 'section' offline: at least right now. Note that I said
easier NOT better. Currently a section represents a subset of one or more
zones. Ideally, these sections represent units that can be added or
removed. IIRC these sections only define a range of physical memory.
To determine if it is possible to take a section offline, one needs to
dig into the zone(s) that the section may be associated with. We'll
have to do things like:
- Stop allocations of pages associated with the section.
- Grab all 'free pages' associated with the section.
- Try to reclaim/free all pages associated with the section.
- Work on this until all pages in the section are not in use (or free).
- OR give up if we know we will not succeed.

My claim of zones being easier to work with today is due to the
fact that zones contain much of the data/infrastructure to make
these types of operations easy. For example, in IWAMOTO's code a
node/zone can be take offline when 'z->present_pages == z->free_pages'.

I've been thinking about how to take a section (or any 'block') of
memory offline. To do this the offlining code needs to somehow
'allocate' all the pages associated with the section. After
'allocation', the code knows the pages are not 'in use' and safely
offline. Any suggestions on how to approach this? I don't think
we can add any infrastructure to section definitions as these will
need to be relatively small. Do we need to teach some of the code
paths that currently understand zones about sections?

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

\
 
 \ /
  Last update: 2005-03-22 14:02    [W:0.195 / U:0.068 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site