All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hanjun Guo <guohanjun@huawei.com>
To: Matthias Brugger <mbrugger@suse.com>,
	David Daney <ddaney.cavm@gmail.com>,
	Will Deacon <will.deacon@arm.com>,
	linux-arm-kernel@lists.infradead.org,
	Mark Rutland <mark.rutland@arm.com>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Tony Luck <tony.luck@intel.com>,
	Fenghua Yu <fenghua.yu@intel.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
	x86@kernel.org, "Rafael J. Wysocki" <rjw@rjwysocki.net>,
	Len Brown <lenb@kernel.org>, Rob Herring <robh+dt@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Grant Likely <grant.likely@linaro.org>,
	Robert Moore <robert.moore@intel.com>,
	Lv Zheng <lv.zheng@intel.com>, Hanjun Guo <hanjun.guo@linaro.org>,
	Marc Zyngier <Marc.Zyngier@arm.com>,
	linux-ia64@vger.kernel.org, linux-acpi@vger.kernel.org,
	devel@acpica.org
Cc: Robert Richter <rrichter@cavium.com>,
	linux-kernel@vger.kernel.org,
	David Daney <david.daney@cavium.com>,
	"thunder.leizhen@huawei.com" <thunder.leizhen@huawei.com>
Subject: Re: [PATCH v7 15/15] acpi, numa: Enable ACPI based NUMA on ARM64
Date: Fri, 17 Jun 2016 10:04:26 +0800	[thread overview]
Message-ID: <57635AAA.6050602@huawei.com> (raw)
In-Reply-To: <5759C7C0.3050508@suse.com>

On 2016/6/10 3:47, Matthias Brugger wrote:
>
>
> On 25/05/16 00:35, David Daney wrote:
>> From: Hanjun Guo <hanjun.guo@linaro.org>
>>
>> Add function needed for cpu to node mapping, and enable ACPI based
>> NUMA for ARM64 in Kconfig
>>
>> Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org>
>> Signed-off-by: Robert Richter <rrichter@cavium.com>
>> [david.daney@cavium.com added ACPI_NUMA default to y for ARM64]
>> Signed-off-by: David Daney <david.daney@cavium.com>
>> Acked-by: Catalin Marinas <catalin.marinas@arm.com>
>> ---
>>   drivers/acpi/Kconfig |  4 ++--
>>   drivers/acpi/numa.c  | 37 ++++++++++++++++++++++++++++++++++++-
>>   include/linux/acpi.h | 17 ++++++++++++++++-
>>   3 files changed, 54 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
>> index b7e2e77..dd76b36 100644
>> --- a/drivers/acpi/Kconfig
>> +++ b/drivers/acpi/Kconfig
>> @@ -291,8 +291,8 @@ config ACPI_THERMAL
>>   config ACPI_NUMA
>>       bool "NUMA support"
>>       depends on NUMA
>> -    depends on (X86 || IA64)
>> -    default y if IA64_GENERIC || IA64_SGI_SN2
>> +    depends on (X86 || IA64 || ARM64)
>> +    default y if IA64_GENERIC || IA64_SGI_SN2 || ARM64
>>
>>   config ACPI_CUSTOM_DSDT_FILE
>>       string "Custom DSDT Table file to include"
>> diff --git a/drivers/acpi/numa.c b/drivers/acpi/numa.c
>> index fad6d28..9b7ce40 100644
>> --- a/drivers/acpi/numa.c
>> +++ b/drivers/acpi/numa.c
>> @@ -170,6 +170,18 @@ acpi_table_print_srat_entry(struct acpi_subtable_header *header)
>>           }
>>           break;
>>
>> +    case ACPI_SRAT_TYPE_GICC_AFFINITY:
>> +        {
>> +            struct acpi_srat_gicc_affinity *p =
>> +                (struct acpi_srat_gicc_affinity *)header;
>> +            pr_debug("SRAT Processor (acpi id[0x%04x]) in proximity domain %d %s\n",
>> +                 p->acpi_processor_uid,
>> +                 p->proximity_domain,
>> +                 (p->flags & ACPI_SRAT_GICC_ENABLED) ?
>> +                 "enabled" : "disabled");
>> +        }
>> +        break;
>> +
>>       default:
>>           pr_warn("Found unsupported SRAT entry (type = 0x%x)\n",
>>               header->type);
>> @@ -360,6 +372,24 @@ acpi_parse_processor_affinity(struct acpi_subtable_header *header,
>>       return 0;
>>   }
>>
>> +static int __init
>> +acpi_parse_gicc_affinity(struct acpi_subtable_header *header,
>> +             const unsigned long end)
>> +{
>> +    struct acpi_srat_gicc_affinity *processor_affinity;
>> +
>> +    processor_affinity = (struct acpi_srat_gicc_affinity *)header;
>> +    if (!processor_affinity)
>> +        return -EINVAL;
>> +
>> +    acpi_table_print_srat_entry(header);
>> +
>> +    /* let architecture-dependent part to do it */
>> +    acpi_numa_gicc_affinity_init(processor_affinity);
>> +
>> +    return 0;
>> +}
>> +
>>   static int __initdata parsed_numa_memblks;
>>
>>   static int __init
>> @@ -404,6 +434,9 @@ int __init acpi_numa_init(void)
>>   {
>>       int cnt = 0;
>>
>> +    if (acpi_disabled)
>> +        return -EINVAL;
>> +
>>       /*
>>        * Should not limit number with cpu num that is from NR_CPUS or nr_cpus=
>>        * SRAT cpu entries could have different order with that in MADT.
>> @@ -412,13 +445,15 @@ int __init acpi_numa_init(void)
>>
>>       /* SRAT: Static Resource Affinity Table */
>>       if (!acpi_table_parse(ACPI_SIG_SRAT, acpi_parse_srat)) {
>> -        struct acpi_subtable_proc srat_proc[2];
>> +        struct acpi_subtable_proc srat_proc[3];
>>
>>           memset(srat_proc, 0, sizeof(srat_proc));
>>           srat_proc[0].id = ACPI_SRAT_TYPE_CPU_AFFINITY;
>>           srat_proc[0].handler = acpi_parse_processor_affinity;
>>           srat_proc[1].id = ACPI_SRAT_TYPE_X2APIC_CPU_AFFINITY;
>>           srat_proc[1].handler = acpi_parse_x2apic_affinity;
>> +        srat_proc[1].id = ACPI_SRAT_TYPE_GICC_AFFINITY;
>> +        srat_proc[1].handler = acpi_parse_gicc_affinity;
>
> Should be srat_proc[2].id and srat_proc[2].handler, right?

Good catch, will send a updated version shortly.

Thanks
Hanjun

WARNING: multiple messages have this Message-ID (diff)
From: Hanjun Guo <guohanjun@huawei.com>
To: Matthias Brugger <mbrugger@suse.com>,
	David Daney <ddaney.cavm@gmail.com>,
	Will Deacon <will.deacon@arm.com>,
	linux-arm-kernel@lists.infradead.org,
	Mark Rutland <mark.rutland@arm.com>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Tony Luck <tony.luck@intel.com>,
	Fenghua Yu <fenghua.yu@intel.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
	x86@kernel.org, "Rafael J. Wysocki" <rjw@rjwysocki.net>,
	Len Brown <lenb@kernel.org>, Rob Herring <robh+dt@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Grant Likely <grant.likely@linaro.org>,
	Robert Moore <robert.moore@intel.com>,
	Lv Zheng <lv.zheng@intel.com>, Hanjun Guo <hanjun.guo@linaro.org>,
	Marc Zyngier <Marc.Zyngier@arm.com>,
	linux-ia64@vger.kernel.org, linux-acpi@vger.kernel.org,
	devel@acpica.org
Cc: Robert Richter <rrichter@cavium.com>,
	linux-kernel@vger.kernel.org,
	David Daney <david.daney@cavium.com>,
	"thunder.leizhen@huawei.com" <thunder.leizhen@huawei.com>
Subject: Re: [PATCH v7 15/15] acpi, numa: Enable ACPI based NUMA on ARM64
Date: Fri, 17 Jun 2016 02:04:26 +0000	[thread overview]
Message-ID: <57635AAA.6050602@huawei.com> (raw)
In-Reply-To: <5759C7C0.3050508@suse.com>

On 2016/6/10 3:47, Matthias Brugger wrote:
>
>
> On 25/05/16 00:35, David Daney wrote:
>> From: Hanjun Guo <hanjun.guo@linaro.org>
>>
>> Add function needed for cpu to node mapping, and enable ACPI based
>> NUMA for ARM64 in Kconfig
>>
>> Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org>
>> Signed-off-by: Robert Richter <rrichter@cavium.com>
>> [david.daney@cavium.com added ACPI_NUMA default to y for ARM64]
>> Signed-off-by: David Daney <david.daney@cavium.com>
>> Acked-by: Catalin Marinas <catalin.marinas@arm.com>
>> ---
>>   drivers/acpi/Kconfig |  4 ++--
>>   drivers/acpi/numa.c  | 37 ++++++++++++++++++++++++++++++++++++-
>>   include/linux/acpi.h | 17 ++++++++++++++++-
>>   3 files changed, 54 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
>> index b7e2e77..dd76b36 100644
>> --- a/drivers/acpi/Kconfig
>> +++ b/drivers/acpi/Kconfig
>> @@ -291,8 +291,8 @@ config ACPI_THERMAL
>>   config ACPI_NUMA
>>       bool "NUMA support"
>>       depends on NUMA
>> -    depends on (X86 || IA64)
>> -    default y if IA64_GENERIC || IA64_SGI_SN2
>> +    depends on (X86 || IA64 || ARM64)
>> +    default y if IA64_GENERIC || IA64_SGI_SN2 || ARM64
>>
>>   config ACPI_CUSTOM_DSDT_FILE
>>       string "Custom DSDT Table file to include"
>> diff --git a/drivers/acpi/numa.c b/drivers/acpi/numa.c
>> index fad6d28..9b7ce40 100644
>> --- a/drivers/acpi/numa.c
>> +++ b/drivers/acpi/numa.c
>> @@ -170,6 +170,18 @@ acpi_table_print_srat_entry(struct acpi_subtable_header *header)
>>           }
>>           break;
>>
>> +    case ACPI_SRAT_TYPE_GICC_AFFINITY:
>> +        {
>> +            struct acpi_srat_gicc_affinity *p >> +                (struct acpi_srat_gicc_affinity *)header;
>> +            pr_debug("SRAT Processor (acpi id[0x%04x]) in proximity domain %d %s\n",
>> +                 p->acpi_processor_uid,
>> +                 p->proximity_domain,
>> +                 (p->flags & ACPI_SRAT_GICC_ENABLED) ?
>> +                 "enabled" : "disabled");
>> +        }
>> +        break;
>> +
>>       default:
>>           pr_warn("Found unsupported SRAT entry (type = 0x%x)\n",
>>               header->type);
>> @@ -360,6 +372,24 @@ acpi_parse_processor_affinity(struct acpi_subtable_header *header,
>>       return 0;
>>   }
>>
>> +static int __init
>> +acpi_parse_gicc_affinity(struct acpi_subtable_header *header,
>> +             const unsigned long end)
>> +{
>> +    struct acpi_srat_gicc_affinity *processor_affinity;
>> +
>> +    processor_affinity = (struct acpi_srat_gicc_affinity *)header;
>> +    if (!processor_affinity)
>> +        return -EINVAL;
>> +
>> +    acpi_table_print_srat_entry(header);
>> +
>> +    /* let architecture-dependent part to do it */
>> +    acpi_numa_gicc_affinity_init(processor_affinity);
>> +
>> +    return 0;
>> +}
>> +
>>   static int __initdata parsed_numa_memblks;
>>
>>   static int __init
>> @@ -404,6 +434,9 @@ int __init acpi_numa_init(void)
>>   {
>>       int cnt = 0;
>>
>> +    if (acpi_disabled)
>> +        return -EINVAL;
>> +
>>       /*
>>        * Should not limit number with cpu num that is from NR_CPUS or nr_cpus>>        * SRAT cpu entries could have different order with that in MADT.
>> @@ -412,13 +445,15 @@ int __init acpi_numa_init(void)
>>
>>       /* SRAT: Static Resource Affinity Table */
>>       if (!acpi_table_parse(ACPI_SIG_SRAT, acpi_parse_srat)) {
>> -        struct acpi_subtable_proc srat_proc[2];
>> +        struct acpi_subtable_proc srat_proc[3];
>>
>>           memset(srat_proc, 0, sizeof(srat_proc));
>>           srat_proc[0].id = ACPI_SRAT_TYPE_CPU_AFFINITY;
>>           srat_proc[0].handler = acpi_parse_processor_affinity;
>>           srat_proc[1].id = ACPI_SRAT_TYPE_X2APIC_CPU_AFFINITY;
>>           srat_proc[1].handler = acpi_parse_x2apic_affinity;
>> +        srat_proc[1].id = ACPI_SRAT_TYPE_GICC_AFFINITY;
>> +        srat_proc[1].handler = acpi_parse_gicc_affinity;
>
> Should be srat_proc[2].id and srat_proc[2].handler, right?

Good catch, will send a updated version shortly.

Thanks
Hanjun


WARNING: multiple messages have this Message-ID (diff)
From: guohanjun@huawei.com (Hanjun Guo)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v7 15/15] acpi, numa: Enable ACPI based NUMA on ARM64
Date: Fri, 17 Jun 2016 10:04:26 +0800	[thread overview]
Message-ID: <57635AAA.6050602@huawei.com> (raw)
In-Reply-To: <5759C7C0.3050508@suse.com>

On 2016/6/10 3:47, Matthias Brugger wrote:
>
>
> On 25/05/16 00:35, David Daney wrote:
>> From: Hanjun Guo <hanjun.guo@linaro.org>
>>
>> Add function needed for cpu to node mapping, and enable ACPI based
>> NUMA for ARM64 in Kconfig
>>
>> Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org>
>> Signed-off-by: Robert Richter <rrichter@cavium.com>
>> [david.daney at cavium.com added ACPI_NUMA default to y for ARM64]
>> Signed-off-by: David Daney <david.daney@cavium.com>
>> Acked-by: Catalin Marinas <catalin.marinas@arm.com>
>> ---
>>   drivers/acpi/Kconfig |  4 ++--
>>   drivers/acpi/numa.c  | 37 ++++++++++++++++++++++++++++++++++++-
>>   include/linux/acpi.h | 17 ++++++++++++++++-
>>   3 files changed, 54 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
>> index b7e2e77..dd76b36 100644
>> --- a/drivers/acpi/Kconfig
>> +++ b/drivers/acpi/Kconfig
>> @@ -291,8 +291,8 @@ config ACPI_THERMAL
>>   config ACPI_NUMA
>>       bool "NUMA support"
>>       depends on NUMA
>> -    depends on (X86 || IA64)
>> -    default y if IA64_GENERIC || IA64_SGI_SN2
>> +    depends on (X86 || IA64 || ARM64)
>> +    default y if IA64_GENERIC || IA64_SGI_SN2 || ARM64
>>
>>   config ACPI_CUSTOM_DSDT_FILE
>>       string "Custom DSDT Table file to include"
>> diff --git a/drivers/acpi/numa.c b/drivers/acpi/numa.c
>> index fad6d28..9b7ce40 100644
>> --- a/drivers/acpi/numa.c
>> +++ b/drivers/acpi/numa.c
>> @@ -170,6 +170,18 @@ acpi_table_print_srat_entry(struct acpi_subtable_header *header)
>>           }
>>           break;
>>
>> +    case ACPI_SRAT_TYPE_GICC_AFFINITY:
>> +        {
>> +            struct acpi_srat_gicc_affinity *p =
>> +                (struct acpi_srat_gicc_affinity *)header;
>> +            pr_debug("SRAT Processor (acpi id[0x%04x]) in proximity domain %d %s\n",
>> +                 p->acpi_processor_uid,
>> +                 p->proximity_domain,
>> +                 (p->flags & ACPI_SRAT_GICC_ENABLED) ?
>> +                 "enabled" : "disabled");
>> +        }
>> +        break;
>> +
>>       default:
>>           pr_warn("Found unsupported SRAT entry (type = 0x%x)\n",
>>               header->type);
>> @@ -360,6 +372,24 @@ acpi_parse_processor_affinity(struct acpi_subtable_header *header,
>>       return 0;
>>   }
>>
>> +static int __init
>> +acpi_parse_gicc_affinity(struct acpi_subtable_header *header,
>> +             const unsigned long end)
>> +{
>> +    struct acpi_srat_gicc_affinity *processor_affinity;
>> +
>> +    processor_affinity = (struct acpi_srat_gicc_affinity *)header;
>> +    if (!processor_affinity)
>> +        return -EINVAL;
>> +
>> +    acpi_table_print_srat_entry(header);
>> +
>> +    /* let architecture-dependent part to do it */
>> +    acpi_numa_gicc_affinity_init(processor_affinity);
>> +
>> +    return 0;
>> +}
>> +
>>   static int __initdata parsed_numa_memblks;
>>
>>   static int __init
>> @@ -404,6 +434,9 @@ int __init acpi_numa_init(void)
>>   {
>>       int cnt = 0;
>>
>> +    if (acpi_disabled)
>> +        return -EINVAL;
>> +
>>       /*
>>        * Should not limit number with cpu num that is from NR_CPUS or nr_cpus=
>>        * SRAT cpu entries could have different order with that in MADT.
>> @@ -412,13 +445,15 @@ int __init acpi_numa_init(void)
>>
>>       /* SRAT: Static Resource Affinity Table */
>>       if (!acpi_table_parse(ACPI_SIG_SRAT, acpi_parse_srat)) {
>> -        struct acpi_subtable_proc srat_proc[2];
>> +        struct acpi_subtable_proc srat_proc[3];
>>
>>           memset(srat_proc, 0, sizeof(srat_proc));
>>           srat_proc[0].id = ACPI_SRAT_TYPE_CPU_AFFINITY;
>>           srat_proc[0].handler = acpi_parse_processor_affinity;
>>           srat_proc[1].id = ACPI_SRAT_TYPE_X2APIC_CPU_AFFINITY;
>>           srat_proc[1].handler = acpi_parse_x2apic_affinity;
>> +        srat_proc[1].id = ACPI_SRAT_TYPE_GICC_AFFINITY;
>> +        srat_proc[1].handler = acpi_parse_gicc_affinity;
>
> Should be srat_proc[2].id and srat_proc[2].handler, right?

Good catch, will send a updated version shortly.

Thanks
Hanjun

WARNING: multiple messages have this Message-ID (diff)
From: Hanjun Guo <guohanjun@huawei.com>
To: Matthias Brugger <mbrugger@suse.com>,
	David Daney <ddaney.cavm@gmail.com>,
	Will Deacon <will.deacon@arm.com>,
	<linux-arm-kernel@lists.infradead.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Tony Luck <tony.luck@intel.com>,
	Fenghua Yu <fenghua.yu@intel.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
	<x86@kernel.org>, "Rafael J. Wysocki" <rjw@rjwysocki.net>,
	Len Brown <lenb@kernel.org>, "Rob Herring" <robh+dt@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	"Grant Likely" <grant.likely@linaro.org>,
	Robert Moore <robert.moore@intel.com>,
	"Lv Zheng" <lv.zheng@intel.com>,
	Hanjun Guo <hanjun.guo@linaro.org>,
	Marc Zyngier <Marc.Zyngier@arm.com>, <linux-ia64@vger.kernel.org>,
	<linux-acpi@vger.kernel.org>, <devel@acpica.org>
Cc: Robert Richter <rrichter@cavium.com>,
	<linux-kernel@vger.kernel.org>,
	David Daney <david.daney@cavium.com>,
	"thunder.leizhen@huawei.com" <thunder.leizhen@huawei.com>
Subject: Re: [PATCH v7 15/15] acpi, numa: Enable ACPI based NUMA on ARM64
Date: Fri, 17 Jun 2016 10:04:26 +0800	[thread overview]
Message-ID: <57635AAA.6050602@huawei.com> (raw)
In-Reply-To: <5759C7C0.3050508@suse.com>

On 2016/6/10 3:47, Matthias Brugger wrote:
>
>
> On 25/05/16 00:35, David Daney wrote:
>> From: Hanjun Guo <hanjun.guo@linaro.org>
>>
>> Add function needed for cpu to node mapping, and enable ACPI based
>> NUMA for ARM64 in Kconfig
>>
>> Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org>
>> Signed-off-by: Robert Richter <rrichter@cavium.com>
>> [david.daney@cavium.com added ACPI_NUMA default to y for ARM64]
>> Signed-off-by: David Daney <david.daney@cavium.com>
>> Acked-by: Catalin Marinas <catalin.marinas@arm.com>
>> ---
>>   drivers/acpi/Kconfig |  4 ++--
>>   drivers/acpi/numa.c  | 37 ++++++++++++++++++++++++++++++++++++-
>>   include/linux/acpi.h | 17 ++++++++++++++++-
>>   3 files changed, 54 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
>> index b7e2e77..dd76b36 100644
>> --- a/drivers/acpi/Kconfig
>> +++ b/drivers/acpi/Kconfig
>> @@ -291,8 +291,8 @@ config ACPI_THERMAL
>>   config ACPI_NUMA
>>       bool "NUMA support"
>>       depends on NUMA
>> -    depends on (X86 || IA64)
>> -    default y if IA64_GENERIC || IA64_SGI_SN2
>> +    depends on (X86 || IA64 || ARM64)
>> +    default y if IA64_GENERIC || IA64_SGI_SN2 || ARM64
>>
>>   config ACPI_CUSTOM_DSDT_FILE
>>       string "Custom DSDT Table file to include"
>> diff --git a/drivers/acpi/numa.c b/drivers/acpi/numa.c
>> index fad6d28..9b7ce40 100644
>> --- a/drivers/acpi/numa.c
>> +++ b/drivers/acpi/numa.c
>> @@ -170,6 +170,18 @@ acpi_table_print_srat_entry(struct acpi_subtable_header *header)
>>           }
>>           break;
>>
>> +    case ACPI_SRAT_TYPE_GICC_AFFINITY:
>> +        {
>> +            struct acpi_srat_gicc_affinity *p =
>> +                (struct acpi_srat_gicc_affinity *)header;
>> +            pr_debug("SRAT Processor (acpi id[0x%04x]) in proximity domain %d %s\n",
>> +                 p->acpi_processor_uid,
>> +                 p->proximity_domain,
>> +                 (p->flags & ACPI_SRAT_GICC_ENABLED) ?
>> +                 "enabled" : "disabled");
>> +        }
>> +        break;
>> +
>>       default:
>>           pr_warn("Found unsupported SRAT entry (type = 0x%x)\n",
>>               header->type);
>> @@ -360,6 +372,24 @@ acpi_parse_processor_affinity(struct acpi_subtable_header *header,
>>       return 0;
>>   }
>>
>> +static int __init
>> +acpi_parse_gicc_affinity(struct acpi_subtable_header *header,
>> +             const unsigned long end)
>> +{
>> +    struct acpi_srat_gicc_affinity *processor_affinity;
>> +
>> +    processor_affinity = (struct acpi_srat_gicc_affinity *)header;
>> +    if (!processor_affinity)
>> +        return -EINVAL;
>> +
>> +    acpi_table_print_srat_entry(header);
>> +
>> +    /* let architecture-dependent part to do it */
>> +    acpi_numa_gicc_affinity_init(processor_affinity);
>> +
>> +    return 0;
>> +}
>> +
>>   static int __initdata parsed_numa_memblks;
>>
>>   static int __init
>> @@ -404,6 +434,9 @@ int __init acpi_numa_init(void)
>>   {
>>       int cnt = 0;
>>
>> +    if (acpi_disabled)
>> +        return -EINVAL;
>> +
>>       /*
>>        * Should not limit number with cpu num that is from NR_CPUS or nr_cpus=
>>        * SRAT cpu entries could have different order with that in MADT.
>> @@ -412,13 +445,15 @@ int __init acpi_numa_init(void)
>>
>>       /* SRAT: Static Resource Affinity Table */
>>       if (!acpi_table_parse(ACPI_SIG_SRAT, acpi_parse_srat)) {
>> -        struct acpi_subtable_proc srat_proc[2];
>> +        struct acpi_subtable_proc srat_proc[3];
>>
>>           memset(srat_proc, 0, sizeof(srat_proc));
>>           srat_proc[0].id = ACPI_SRAT_TYPE_CPU_AFFINITY;
>>           srat_proc[0].handler = acpi_parse_processor_affinity;
>>           srat_proc[1].id = ACPI_SRAT_TYPE_X2APIC_CPU_AFFINITY;
>>           srat_proc[1].handler = acpi_parse_x2apic_affinity;
>> +        srat_proc[1].id = ACPI_SRAT_TYPE_GICC_AFFINITY;
>> +        srat_proc[1].handler = acpi_parse_gicc_affinity;
>
> Should be srat_proc[2].id and srat_proc[2].handler, right?

Good catch, will send a updated version shortly.

Thanks
Hanjun

  reply	other threads:[~2016-06-17  2:04 UTC|newest]

Thread overview: 109+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-24 22:35 [PATCH v7 00/15] ACPI NUMA support for ARM64 David Daney
2016-05-24 22:35 ` David Daney
2016-05-24 22:35 ` David Daney
2016-05-24 22:35 ` [PATCH v7 01/15] acpi, numa: Use pr_fmt() instead of printk David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35 ` [PATCH v7 02/15] acpi, numa: Replace ACPI_DEBUG_PRINT() with pr_debug() David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35 ` [PATCH v7 03/15] acpi, numa: remove duplicate NULL check David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35 ` [PATCH v7 04/15] acpi, numa: Move acpi_numa_arch_fixup() to ia64 only David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35 ` [PATCH v7 05/15] acpi, numa: move acpi_numa_slit_init() to drivers/acpi/numa.c David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35 ` [PATCH v7 06/15] arm64, numa: rework numa_add_memblk() David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35 ` [PATCH v7 07/15] arm64, numa: Cleanup NUMA disabled messages David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-27  7:58   ` Dennis Chen
2016-05-27  7:58     ` Dennis Chen
2016-05-27  7:58     ` Dennis Chen
2016-05-31 12:28   ` Hanjun Guo
2016-05-31 12:28     ` [Devel] " Hanjun Guo
2016-05-31 12:28     ` Hanjun Guo
2016-05-31 12:28     ` Hanjun Guo
2016-05-24 22:35 ` [PATCH v7 08/15] x86, acpi, numa: cleanup acpi_numa_processor_affinity_init() David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35 ` [PATCH v7 09/15] acpi, numa: move bad_srat() and srat_disabled() to drivers/acpi/numa.c David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35 ` [PATCH v7 10/15] acpi, numa: remove unneeded acpi_numa=1 David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35 ` [PATCH v7 11/15] acpi, numa: Move acpi_numa_memory_affinity_init() to drivers/acpi/numa.c David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35 ` [PATCH v7 12/15] acpi, numa, srat: Improve SRAT error detection and add messages David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35 ` [PATCH v7 13/15] ACPI / processor: Add acpi_map_madt_entry() David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-25 14:42   ` Catalin Marinas
2016-05-25 14:42     ` Catalin Marinas
2016-05-25 14:42     ` Catalin Marinas
2016-05-31 13:05   ` Hanjun Guo
2016-05-31 13:05     ` [Devel] " Hanjun Guo
2016-05-31 13:05     ` Hanjun Guo
2016-05-31 13:05     ` Hanjun Guo
2016-05-24 22:35 ` [PATCH v7 14/15] arm64, acpi, numa: NUMA support based on SRAT and SLIT David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-05-25 14:42   ` Catalin Marinas
2016-05-25 14:42     ` Catalin Marinas
2016-05-25 14:42     ` Catalin Marinas
2016-05-27  8:04   ` Dennis Chen
2016-05-27  8:04     ` Dennis Chen
2016-05-27  8:04     ` Dennis Chen
2016-05-27  8:04     ` Dennis Chen
2016-08-15 15:35   ` Catalin Marinas
2016-08-15 15:35     ` Catalin Marinas
2016-08-15 15:35     ` Catalin Marinas
2016-08-15 22:55     ` David Daney
2016-08-15 22:55       ` David Daney
2016-08-15 22:55       ` David Daney
2016-08-15 22:55       ` David Daney
2016-08-16 11:58     ` Hanjun Guo
2016-08-16 11:58       ` [Devel] " Hanjun Guo
2016-08-16 11:58       ` Hanjun Guo
2016-08-16 11:58       ` Hanjun Guo
2016-05-24 22:35 ` [PATCH v7 15/15] acpi, numa: Enable ACPI based NUMA on ARM64 David Daney
2016-05-24 22:35   ` David Daney
2016-05-24 22:35   ` David Daney
2016-06-09 19:47   ` Matthias Brugger
2016-06-09 19:47     ` Matthias Brugger
2016-06-09 19:47     ` Matthias Brugger
2016-06-17  2:04     ` Hanjun Guo [this message]
2016-06-17  2:04       ` Hanjun Guo
2016-06-17  2:04       ` Hanjun Guo
2016-06-17  2:04       ` Hanjun Guo
2016-06-03 22:07 ` [PATCH v7 00/15] ACPI NUMA support for ARM64 Rafael J. Wysocki
2016-06-03 22:07   ` Rafael J. Wysocki
2016-06-03 22:07   ` Rafael J. Wysocki
2016-06-10 10:20   ` Robert Richter
2016-06-10 10:20     ` Robert Richter
2016-06-10 10:20     ` Robert Richter
2016-06-10 10:20     ` Robert Richter
2016-06-10 10:26     ` Robert Richter
2016-06-10 10:26       ` Robert Richter
2016-06-10 10:26       ` Robert Richter
2016-06-10 10:26       ` Robert Richter
2016-06-10 13:51       ` Rafael J. Wysocki
2016-06-10 13:51         ` Rafael J. Wysocki
2016-06-10 13:51         ` Rafael J. Wysocki

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=57635AAA.6050602@huawei.com \
    --to=guohanjun@huawei.com \
    --cc=Marc.Zyngier@arm.com \
    --cc=catalin.marinas@arm.com \
    --cc=david.daney@cavium.com \
    --cc=ddaney.cavm@gmail.com \
    --cc=devel@acpica.org \
    --cc=fenghua.yu@intel.com \
    --cc=frowand.list@gmail.com \
    --cc=grant.likely@linaro.org \
    --cc=hanjun.guo@linaro.org \
    --cc=hpa@zytor.com \
    --cc=lenb@kernel.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-ia64@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lv.zheng@intel.com \
    --cc=mark.rutland@arm.com \
    --cc=mbrugger@suse.com \
    --cc=mingo@redhat.com \
    --cc=rjw@rjwysocki.net \
    --cc=robert.moore@intel.com \
    --cc=robh+dt@kernel.org \
    --cc=rrichter@cavium.com \
    --cc=tglx@linutronix.de \
    --cc=thunder.leizhen@huawei.com \
    --cc=tony.luck@intel.com \
    --cc=will.deacon@arm.com \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.