* Re: [PATCH -next v3] arm64: fix build warning for ARM64_MEMSTART_SHIFT
[not found] <20230725202404.3470111-1-chris.zjh@huawei.com>
@ 2023-08-03 17:06 ` Catalin Marinas
2023-08-04 6:24 ` Anshuman Khandual
0 siblings, 1 reply; 3+ messages in thread
From: Catalin Marinas @ 2023-08-03 17:06 UTC (permalink / raw)
To: Zhang Jianhua
Cc: will, mark.rutland, ryan.roberts, joey.gouly, ardb,
anshuman.khandual, bhe, thunder.leizhen, broonie,
linux-arm-kernel, linux-kernel
On Tue, Jul 25, 2023 at 08:24:04PM +0000, Zhang Jianhua wrote:
> When building with W=1, the following warning occurs.
>
> arch/arm64/include/asm/kernel-pgtable.h:129:41: error: "PUD_SHIFT" is not defined, evaluates to 0 [-Werror=undef]
> 129 | #define ARM64_MEMSTART_SHIFT PUD_SHIFT
> | ^~~~~~~~~
> arch/arm64/include/asm/kernel-pgtable.h:142:5: note: in expansion of macro ‘ARM64_MEMSTART_SHIFT’
> 142 | #if ARM64_MEMSTART_SHIFT < SECTION_SIZE_BITS
> | ^~~~~~~~~~~~~~~~~~~~
>
> The reason is that PUD_SHIFT isn't defined if CONFIG_PGTABLE_LEVELS == 3
> and CONFIG_VA_BITS == 39.
The correct description is that the generic PUD_SHIFT isn't defined for
asm files, we still have it defined for C files (there's an #ifndef
__ASSEMBLY__ guard).
> Now move the macro ARM64_MEMSTART_SHIFT and
> ARM64_MEMSTART_ALIGN to arch/arm64/mm/init.c where it is used to avoid
> this issue, and also there is no other place to call these two macro.
>
> Signed-off-by: Zhang Jianhua <chris.zjh@huawei.com>
This fix works for me. I'll leave it to Will for 6.6 as apart from the
warning with W=1, there's no other issue (ARM64_MEMSTART_* are not used
in any asm files).
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH -next v3] arm64: fix build warning for ARM64_MEMSTART_SHIFT
2023-08-03 17:06 ` [PATCH -next v3] arm64: fix build warning for ARM64_MEMSTART_SHIFT Catalin Marinas
@ 2023-08-04 6:24 ` Anshuman Khandual
2023-08-04 6:39 ` zhangjianhua (E)
0 siblings, 1 reply; 3+ messages in thread
From: Anshuman Khandual @ 2023-08-04 6:24 UTC (permalink / raw)
To: Catalin Marinas, Zhang Jianhua
Cc: will, mark.rutland, ryan.roberts, joey.gouly, ardb, bhe,
thunder.leizhen, broonie, linux-arm-kernel, linux-kernel
On 8/3/23 22:36, Catalin Marinas wrote:
> On Tue, Jul 25, 2023 at 08:24:04PM +0000, Zhang Jianhua wrote:
>> When building with W=1, the following warning occurs.
>>
>> arch/arm64/include/asm/kernel-pgtable.h:129:41: error: "PUD_SHIFT" is not defined, evaluates to 0 [-Werror=undef]
>> 129 | #define ARM64_MEMSTART_SHIFT PUD_SHIFT
>> | ^~~~~~~~~
>> arch/arm64/include/asm/kernel-pgtable.h:142:5: note: in expansion of macro ‘ARM64_MEMSTART_SHIFT’
>> 142 | #if ARM64_MEMSTART_SHIFT < SECTION_SIZE_BITS
>> | ^~~~~~~~~~~~~~~~~~~~
>>
>> The reason is that PUD_SHIFT isn't defined if CONFIG_PGTABLE_LEVELS == 3
>> and CONFIG_VA_BITS == 39.
>
> The correct description is that the generic PUD_SHIFT isn't defined for
> asm files, we still have it defined for C files (there's an #ifndef
> __ASSEMBLY__ guard).
Agreed, please rework the commit message explaining how generic PUD_SHIFT
definition is not available for assembly files, prompting this code block
movement. CONFIG_PGTABLE_LEVELS == 3 with CONFIG_VA_BITS == 39 just help
in exposing this problem.
>
>> Now move the macro ARM64_MEMSTART_SHIFT and
>> ARM64_MEMSTART_ALIGN to arch/arm64/mm/init.c where it is used to avoid
>> this issue, and also there is no other place to call these two macro.
>>
>> Signed-off-by: Zhang Jianhua <chris.zjh@huawei.com>
>
> This fix works for me. I'll leave it to Will for 6.6 as apart from the
> warning with W=1, there's no other issue (ARM64_MEMSTART_* are not used
> in any asm files).
Right, not real a problem to be fixed, this can wait till 6.6
>
> Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Reviewed-by: Anshuman Khandual <anshuman.khandual@arm.com>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH -next v3] arm64: fix build warning for ARM64_MEMSTART_SHIFT
2023-08-04 6:24 ` Anshuman Khandual
@ 2023-08-04 6:39 ` zhangjianhua (E)
0 siblings, 0 replies; 3+ messages in thread
From: zhangjianhua (E) @ 2023-08-04 6:39 UTC (permalink / raw)
To: Anshuman Khandual, Catalin Marinas
Cc: will, mark.rutland, ryan.roberts, joey.gouly, ardb, bhe,
thunder.leizhen, broonie, linux-arm-kernel, linux-kernel
在 2023/8/4 14:24, Anshuman Khandual 写道:
>
> On 8/3/23 22:36, Catalin Marinas wrote:
>> On Tue, Jul 25, 2023 at 08:24:04PM +0000, Zhang Jianhua wrote:
>>> When building with W=1, the following warning occurs.
>>>
>>> arch/arm64/include/asm/kernel-pgtable.h:129:41: error: "PUD_SHIFT" is not defined, evaluates to 0 [-Werror=undef]
>>> 129 | #define ARM64_MEMSTART_SHIFT PUD_SHIFT
>>> | ^~~~~~~~~
>>> arch/arm64/include/asm/kernel-pgtable.h:142:5: note: in expansion of macro ‘ARM64_MEMSTART_SHIFT’
>>> 142 | #if ARM64_MEMSTART_SHIFT < SECTION_SIZE_BITS
>>> | ^~~~~~~~~~~~~~~~~~~~
>>>
>>> The reason is that PUD_SHIFT isn't defined if CONFIG_PGTABLE_LEVELS == 3
>>> and CONFIG_VA_BITS == 39.
>> The correct description is that the generic PUD_SHIFT isn't defined for
>> asm files, we still have it defined for C files (there's an #ifndef
>> __ASSEMBLY__ guard).
> Agreed, please rework the commit message explaining how generic PUD_SHIFT
> definition is not available for assembly files, prompting this code block
> movement. CONFIG_PGTABLE_LEVELS == 3 with CONFIG_VA_BITS == 39 just help
> in exposing this problem.
No problem, I will send a new patch soon.
>>> Now move the macro ARM64_MEMSTART_SHIFT and
>>> ARM64_MEMSTART_ALIGN to arch/arm64/mm/init.c where it is used to avoid
>>> this issue, and also there is no other place to call these two macro.
>>>
>>> Signed-off-by: Zhang Jianhua <chris.zjh@huawei.com>
>> This fix works for me. I'll leave it to Will for 6.6 as apart from the
>> warning with W=1, there's no other issue (ARM64_MEMSTART_* are not used
>> in any asm files).
> Right, not real a problem to be fixed, this can wait till 6.6
>
>> Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
> Reviewed-by: Anshuman Khandual <anshuman.khandual@arm.com>
>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2023-08-04 6:39 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20230725202404.3470111-1-chris.zjh@huawei.com>
2023-08-03 17:06 ` [PATCH -next v3] arm64: fix build warning for ARM64_MEMSTART_SHIFT Catalin Marinas
2023-08-04 6:24 ` Anshuman Khandual
2023-08-04 6:39 ` zhangjianhua (E)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).