Re: [PATCH 1/2 V2] memory-hotplug: fix BUG_ON in move_freepages()

From: Gu Zheng
Date: Sun Apr 19 2015 - 22:28:18 EST


Hi Ishimatsu, Xishi,

On 04/20/2015 10:11 AM, Yasuaki Ishimatsu wrote:

>
>> When hot adding memory and creating new node, the node is offline.
>> And after calling node_set_online(), the node becomes online.
>>
>> Oh, sorry. I misread your ptaches.
>>
>
> Please ignore it...

Seems also a misread to me.
I clear it (my worry) here:
If we set the node size to 0 here, it may hidden more things than we experted.
All the init chunks around with the size (spanned/present/managed...) will
be non-sense, and the user/caller will not get a summary of the hot added node
because of the changes here.
I am not sure the worry is necessary, please correct me if I missing something.

Regards,
Gu

>
> Thanks,
> Yasuaki Ishimatsu
>
> On
> Yasuaki Ishimatsu <yasu.isimatu@xxxxxxxxx> wrote:
>
>>
>> When hot adding memory and creating new node, the node is offline.
>> And after calling node_set_online(), the node becomes online.
>>
>> Oh, sorry. I misread your ptaches.
>>
>> Thanks,
>> Yasuaki Ishimatsu
>>
>> On Mon, 20 Apr 2015 09:33:10 +0800
>> Xishi Qiu <qiuxishi@xxxxxxxxxx> wrote:
>>
>>> On 2015/4/18 4:05, Yasuaki Ishimatsu wrote:
>>>
>>>>
>>>> Your patches will fix your issue.
>>>> But, if BIOS reports memory first at node hot add, pgdat can
>>>> not be initialized.
>>>>
>>>> Memory hot add flows are as follows:
>>>>
>>>> add_memory
>>>> ...
>>>> -> hotadd_new_pgdat()
>>>> ...
>>>> -> node_set_online(nid)
>>>>
>>>> When calling hotadd_new_pgdat() for a hot added node, the node is
>>>> offline because node_set_online() is not called yet. So if applying
>>>> your patches, the pgdat is not initialized in this case.
>>>>
>>>> Thanks,
>>>> Yasuaki Ishimatsu
>>>>
>>>
>>> Hi Yasuaki,
>>>
>>> I'm not quite understand, when BIOS reports memory first, why pgdat
>>> can not be initialized?
>>> When hotadd a new node, hotadd_new_pgdat() will be called too, and
>>> when hotadd memory to a existent node, it's no need to call hotadd_new_pgdat(),
>>> right?
>>>
>>> Thanks,
>>> Xishi Qiu
>>>
> .
>


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