lkml.org 
[lkml]   [2016]   [May]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 2/3] memory-hotplug: more general validation of zone during online

    On Tue, 10 May 2016 15:39:43 -0500
    Reza Arbab <arbab@linux.vnet.ibm.com> wrote:

    > On Tue, May 10, 2016 at 11:08:56AM -0700, Yasuaki Ishimatsu wrote:
    > >On Mon, 9 May 2016 12:53:38 -0500
    > >Reza Arbab <arbab@linux.vnet.ibm.com> wrote:
    > >> * If X is lower than Y, the onlined memory must lie at the end of X.
    > >> * If X is higher than Y, the onlined memory must lie at the start of X.
    > >
    > >If memory address has hole, memory address gets uncotinuous. Then memory
    > >cannot be changed the zone by above the two conditions. So the conditions
    > >shouold be removed.
    >
    > I don't understand what you mean by this. Could you give an example?

    > +int zone_can_shift(unsigned long pfn, unsigned long nr_pages,
    > + enum zone_type target)
    > +{
    <snip>
    > + if (idx < target) {
    > + /* pages must be at end of current zone */
    > + if (pfn + nr_pages != zone_end_pfn(zone))
    > + return 0;
    <snip>
    > + if (target < idx) {
    > + /* pages must be at beginning of current zone */
    > + if (pfn != zone->zone_start_pfn)
    > + return 0;

    According your patch, memory address must be continuous for changing zone.
    So if memory address is uncontinuous as follows, memory address 0x180000000-0x1FFFFFFFF
    can be changed from ZONE_NORMAL to ZONE_MOVABLE. But memory address 0x80000000-0xFFFFFFFF
    can not be changed from ZONE_NORMAL to ZONE_MOVABLE since it does not meet
    above condition.

    Memory address
    0x80000000 - 0xFFFFFFFF
    0x180000000 - 0x1FFFFFFFF

    Thanks,
    Yasuaki Ishimatsu




    \
     
     \ /
      Last update: 2016-05-11 17:41    [W:2.239 / U:0.232 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site