|
From: | Daniel Henrique Barboza |
Subject: | Re: [PATCH 02/10] numa: introduce MachineClass::forbid_asymmetrical_numa |
Date: | Fri, 21 Aug 2020 09:47:47 -0300 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 |
On 8/21/20 5:55 AM, Igor Mammedov wrote:
On Thu, 20 Aug 2020 12:51:03 -0400 Eduardo Habkost <ehabkost@redhat.com> wrote:On Thu, Aug 20, 2020 at 02:15:04PM +1000, David Gibson wrote:On Wed, Aug 19, 2020 at 10:11:28PM -0400, Eduardo Habkost wrote:On Thu, Aug 20, 2020 at 11:17:26AM +1000, David Gibson wrote:On Fri, Aug 14, 2020 at 05:54:16PM -0300, Daniel Henrique Barboza wrote:The pSeries machine does not support asymmetrical NUMA configurations.This seems a bit oddly specific to have as a global machine class property. Would it make more sense for machines with specific NUMA constraints to just verify those during their initialization?This would be much simpler. However, I like the idea of representing machine-specific configuration validation rules as data that can eventually be exported to management software.Ah, ok, so basically the usual tradeoff between flexibility and advertisability. So, in that case, I guess the question is whether we envisage "no assymmetry" as a constraint common enough that it's worth creating an advertisable rule or not. If we only ever have one user, then we haven't really done any better than hard coding the constraint in the manageent software. Of course to complicate matters, in the longer term we're looking at removing that constraint from pseries - but doing so will be dependent on the guest kernel understanding a new format for the NUMA information in the device tree. So qemu alone won't have enough information to tell if such a configuration is possible or not.Requiring both QEMU (and possibly management software) to be patched again after the guest kernel is fixed sounds undesirable.If we drop this restriction, then we don't need to touch QEMU when guest kernel is ready. Btw, what spapr spec says about the matter?
LOPAPR support a somewhat asymmetrical NUMA setup in its current form, but the Linux kernel doesn't support it. The effort to implement it in the current spapr machine code, given that Linux wouldn't mind it, is not worth it. This is why I chose to invalidate it for pseries.
Perhaps a warning would be better in this case? In either case, it sounds like this won't be a common constraint and I now agree with your original suggestion of doing this in machine initialization code.Agreed, if it goes to spapr specific machine code I will not object much. (it will burden just spapr maintainers, so it's about convincing David in the end)
I believe he's ok with it given that he suggested it in his first reply. I'll move this verification to spapr machine_init in the next version. Thanks, DHB
[Prev in Thread] | Current Thread | [Next in Thread] |