Re: [Part1 PATCH v5 16/22] x86, mm, numa: Move numa emulationhandling down.

From: Yinghai Lu
Date: Tue Jun 18 2013 - 02:22:33 EST


On Mon, Jun 17, 2013 at 6:58 PM, Tejun Heo <tj@xxxxxxxxxx> wrote:
> On Thu, Jun 13, 2013 at 09:03:03PM +0800, Tang Chen wrote:
>> From: Yinghai Lu <yinghai@xxxxxxxxxx>
>>
>> numa_emulation() needs to allocate buffer for new numa_meminfo
>> and distance matrix, so execute it later in x86_numa_init().
>>
>> Also we change the behavoir:
>> - before this patch, if user input wrong data in command
>> line, it will fall back to next numa probing or disabling
>> numa.
>> - after this patch, if user input wrong data in command line,
>> it will stay with numa info probed from previous probing,
>> like ACPI SRAT or amd_numa.
>>
>> We need to call numa_check_memblks to reject wrong user inputs early
>> so that we can keep the original numa_meminfo not changed.
>
> So, this is another very subtle ordering you're adding without any
> comment and I'm not sure it even makes sense because the function can
> fail after that point.

Yes, if it fail, we will stay with current numa info from firmware.
That looks like right behavior.

Before this patch, it will fail to next numa way like if acpi srat + user
input fail, it will try to go with amd_numa then try apply user info.

>
> I'm getting really doubtful about this whole approach of carefully
> splitting discovery and registration. It's inherently fragile like
> hell and the poor documentation makes it a lot worse. I'm gonna reply
> to the head message.

Maybe look at the patch is not clear enough, but if looks at the final changed
code it would be more clear.

Thanks

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