Define __ARCH_WANT_NEW_STAT to fix the following build warning:
CALL scripts/checksyscalls.sh
<stdin>:569:2: warning: #warning syscall fstat not implemented [-Wcpp]
Signed-off-by: Tiezhu Yang <[email protected]>
---
arch/loongarch/include/uapi/asm/unistd.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/loongarch/include/uapi/asm/unistd.h b/arch/loongarch/include/uapi/asm/unistd.h
index fcb6689..b344b1f 100644
--- a/arch/loongarch/include/uapi/asm/unistd.h
+++ b/arch/loongarch/include/uapi/asm/unistd.h
@@ -1,4 +1,5 @@
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
+#define __ARCH_WANT_NEW_STAT
#define __ARCH_WANT_SYS_CLONE
#define __ARCH_WANT_SYS_CLONE3
--
2.1.0
On 2022/8/29 17:55, Tiezhu Yang wrote:
> Define __ARCH_WANT_NEW_STAT to fix the following build warning:
>
> CALL scripts/checksyscalls.sh
> <stdin>:569:2: warning: #warning syscall fstat not implemented [-Wcpp]
>
> Signed-off-by: Tiezhu Yang <[email protected]>
> ---
> arch/loongarch/include/uapi/asm/unistd.h | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/loongarch/include/uapi/asm/unistd.h b/arch/loongarch/include/uapi/asm/unistd.h
> index fcb6689..b344b1f 100644
> --- a/arch/loongarch/include/uapi/asm/unistd.h
> +++ b/arch/loongarch/include/uapi/asm/unistd.h
> @@ -1,4 +1,5 @@
> /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
> +#define __ARCH_WANT_NEW_STAT
> #define __ARCH_WANT_SYS_CLONE
> #define __ARCH_WANT_SYS_CLONE3
>
No. We explicitly removed support for fstat/newfstatat in favor of
statx, so the correct way forward is to amend the checksyscalls.sh, to
make it aware of the fact that loongarch is the latest shiny addition so
it doesn't carry any of the "legacy" around.
--
WANG "xen0n" Xuerui
Linux/LoongArch mailing list: https://lore.kernel.org/loongarch/
On Mon, Aug 29, 2022, at 11:55 AM, Tiezhu Yang wrote:
> CALL scripts/checksyscalls.sh
> <stdin>:569:2: warning: #warning syscall fstat not implemented [-Wcpp]
> @@ -1,4 +1,5 @@
> /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
> +#define __ARCH_WANT_NEW_STAT
> #define __ARCH_WANT_SYS_CLONE
> #define __ARCH_WANT_SYS_CLONE3
The correct fix is to change scripts/checksyscalls.sh,
making it always define __IGNORE_fstat
Arnd
On 8/29/22 19:36, Arnd Bergmann wrote:
> On Mon, Aug 29, 2022, at 11:55 AM, Tiezhu Yang wrote:
>
>> CALL scripts/checksyscalls.sh
>> <stdin>:569:2: warning: #warning syscall fstat not implemented [-Wcpp]
>
>> @@ -1,4 +1,5 @@
>> /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
>> +#define __ARCH_WANT_NEW_STAT
>> #define __ARCH_WANT_SYS_CLONE
>> #define __ARCH_WANT_SYS_CLONE3
>
> The correct fix is to change scripts/checksyscalls.sh,
> making it always define __IGNORE_fstat
>
Hi Arnd,
Thank you very much.
I read the commit message in the commit 82b355d161c9 ("y2038: Remove
newstat family from default syscall set"), I am not quite sure whether
we should check __ARCH_WANT_NEW_STAT first, like this:
#ifndef __ARCH_WANT_NEW_STAT
#define __IGNORE_fstat
#endif
Thanks,
Tiezhu
On Mon, Aug 29, 2022, at 4:34 PM, Tiezhu Yang wrote:
>
> I read the commit message in the commit 82b355d161c9 ("y2038: Remove
> newstat family from default syscall set"), I am not quite sure whether
> we should check __ARCH_WANT_NEW_STAT first, like this:
>
> #ifndef __ARCH_WANT_NEW_STAT
> #define __IGNORE_fstat
> #endif
No, the #ifdef is not needed here, the entry just means we
no longer warn about the missing syscall because it has
been replaced by statx and this is true regardless of
__ARCH_WANT_NEW_STAT.
Arnd