Re: [PATCH -next] arm64: Export __cpu_logical_map

Anshuman Khandual
2020-07-24T10:35:28Z

On 07/24/2020 03:05 PM, Catalin Marinas wrote:
> On Fri, Jul 24, 2020 at 10:13:52AM +0100, Mark Rutland wrote:
>> On Fri, Jul 24, 2020 at 01:46:18PM +0530, Anshuman Khandual wrote:
>>> On 07/24/2020 08:38 AM, Kefeng Wang wrote:
>>>>> Reported-by: Hulk Robot <hulkci@huawei.com>
>>>>> Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
>>>>> ---
>>>>> ï¿½ arch/arm64/kernel/setup.c | 1 +
>>>>> ï¿½ 1 file changed, 1 insertion(+)
>>>>>
>>>>> diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c
>>>>> index c793276ec7ad9..3aea05fbb9998 100644
>>>>> --- a/arch/arm64/kernel/setup.c
>>>>> +++ b/arch/arm64/kernel/setup.c
>>>>> @@ -275,6 +275,7 @@ static int __init reserve_memblock_reserved_regions(void)
>>>>> ï¿½ arch_initcall(reserve_memblock_reserved_regions);
>>>>> ï¿½ ï¿½ u64 __cpu_logical_map[NR_CPUS] = { [0 ... NR_CPUS-1] = INVALID_HWID };
>>>>> +EXPORT_SYMBOL(__cpu_logical_map);
>>
>> If modules are using cpu_logical_map(), this looks sane ot me, but I
>> wonder if we should instead turn cpu_logical_map() into a C wrapper in
>> smp.c, or at least mark __cpu_logical_map as __ro_after_init lest
>> someone have the bright idea to fiddle with it.
>
> I'd go for a C wrapper and also change a couple of instances where we
> assign a value directly to cpu_logical_map(cpu).

Probably also create a set_cpu_logical_map(cpu, hwid) for those instances
as well.