Skip to contentSkip to conversation

linux-libc-header: Fix ptrace.h and prctl.h conflict on aarch64

PATCH Superseded Khem Raj 3 participants 4 messages Jul 24, 2019

v1 of 2 Superseded Latest is v2 →

lore
Share & tools
lore

Khem Raj

author
#0 lore raw

PATCH 1/1 linux-libc-header: Fix ptrace.h and prctl.h conflict on aarch64

This is a backport from 5.2 release upstream, it fixes long standing build failure on musl/aarch64

---
 ...sm-ptrace.h-should-not-depend-on-uap.patch | 62 +++++++++++++++++++
 .../linux-libc-headers_5.0.bb                 |  1 +
 ...ttribute-alias-with-Wattribute-alias.patch | 43 +++++++++++++
 3 files changed, 106 insertions(+)
 create mode 100644 meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-arm64-sve-uapi-asm-ptrace.h-should-not-depend-on-uap.patch
 create mode 100644 meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias-with-Wattribute-alias.patch
meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-arm64-sve-uapi-asm-ptrace.h-should-not-depend-on-uap.patch new file +62 -0
new file mode 100644
index 0000000000..5ea46e9590
@@ -0,0 +1,62 @@
+From 35341ca0614ab13e1ef34ad4f29a39e15ef31fa8 Mon Sep 17 00:00:00 2001
+From: Anisse Astier <[email protected]>
+Date: Mon, 17 Jun 2019 15:22:22 +0200
+Subject: [PATCH] arm64/sve: <uapi/asm/ptrace.h> should not depend on
+ <uapi/linux/prctl.h>
+
+Pulling linux/prctl.h into asm/ptrace.h in the arm64 UAPI headers causes
+userspace build issues for any program (e.g. strace and qemu) that
+includes both <sys/prctl.h> and <linux/ptrace.h> when using musl libc:
+
+  | error: redefinition of 'struct prctl_mm_map'
+  |  struct prctl_mm_map {
+
+See https://github.com/foundriesio/meta-lmp/commit/6d4a106e191b5d79c41b9ac78fd321316d3013c0
+for a public example of people working around this issue.
+
+Although it's a bit grotty, fix this breakage by duplicating the prctl
+constant definitions. Since these are part of the kernel ABI, they
+cannot be changed in future and so it's not the end of the world to have
+them open-coded.
+
+Fixes: 43d4da2c45b2 ("arm64/sve: ptrace and ELF coredump support")
+
+Upstream-Status: Backport [https://github.com/torvalds/linux/commit/35341ca0614ab13e1ef34ad4f29a39e15ef31fa8]
+Cc: [email protected]
+Acked-by: Dave Martin <[email protected]>
+Signed-off-by: Anisse Astier <[email protected]>
+Signed-off-by: Will Deacon <[email protected]>
+---
+ arch/arm64/include/uapi/asm/ptrace.h | 8 +++-----
+ 1 file changed, 3 insertions(+), 5 deletions(-)
+
+diff --git a/arch/arm64/include/uapi/asm/ptrace.h b/arch/arm64/include/uapi/asm/ptrace.h
+index 97c53203150b..e932284993d4 100644
+--- a/arch/arm64/include/uapi/asm/ptrace.h
++++ b/arch/arm64/include/uapi/asm/ptrace.h
+@@ -65,8 +65,6 @@
+ 
+ #ifndef __ASSEMBLY__
+ 
+-#include <linux/prctl.h>
+-
+ /*
+  * User structures for general purpose, floating point and debug registers.
+  */
+@@ -113,10 +111,10 @@ struct user_sve_header {
+ 
+ /*
+  * Common SVE_PT_* flags:
+- * These must be kept in sync with prctl interface in <linux/ptrace.h>
++ * These must be kept in sync with prctl interface in <linux/prctl.h>
+  */
+-#define SVE_PT_VL_INHERIT		(PR_SVE_VL_INHERIT >> 16)
+-#define SVE_PT_VL_ONEXEC		(PR_SVE_SET_VL_ONEXEC >> 16)
++#define SVE_PT_VL_INHERIT		((1 << 17) /* PR_SVE_VL_INHERIT */ >> 16)
++#define SVE_PT_VL_ONEXEC		((1 << 18) /* PR_SVE_SET_VL_ONEXEC */ >> 16)
+ 
+ 
+ /*
+-- 
+2.22.0
+
meta/recipes-kernel/linux-libc-headers/linux-libc-headers_5.0.bb +1 -0
index e76120c5b8..473688d95f 100644
@@ -12,6 +12,7 @@ SRC_URI_append_libc-musl = "\
 SRC_URI_append = "\
     file://0001-scripts-Use-fixed-input-and-output-files-instead-of-.patch \
     file://0001-kbuild-install_headers.sh-Strip-_UAPI-from-if-define.patch \
+    file://0001-arm64-sve-uapi-asm-ptrace.h-should-not-depend-on-uap.patch \
 "
 
 SRC_URI[md5sum] = "7381ce8aac80a01448e065ce795c19c0"
meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias-with-Wattribute-alias.patch new file +43 -0

43 lines not on this page · raw message

Signature · 1 line
2.22.0
#1 lore raw

✗ patchtest: failure for linux-libc-header: Fix ptrace.h and prctl.h conflict on aarch64

== Series Details ==

Series: linux-libc-header: Fix ptrace.h and prctl.h conflict on aarch64
Revision: 1
URL : https://patchwork.openembedded.org/series/18852/
State : failure

== Summary ==

Thank you for submitting this patch series to OpenEmbedded Core. This is an automated response. Several tests have been executed on the proposed series by patchtest resulting in the following failures:

* Issue Added patch file is missing Upstream-Status in the header [test_upstream_status_presence_format]

  Suggested fix    Add Upstream-Status: <Valid status> to the header of meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias-with-Wattribute-alias.patch
  Standard format  Upstream-Status: <Valid status>
  Valid status     Pending, Accepted, Backport, Denied, Inappropriate [reason], Submitted [where]

If you believe any of these test results are incorrect, please reply to the mailing list ([email protected]) raising your concerns. Otherwise we would appreciate you correcting the issues and submitting a new version of the patchset if applicable. Please ensure you add/increment the version number when sending the new version (i.e. [PATCH] -> [PATCH v2] -> [PATCH v3] -> ...).

---

Guidelines:     https://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines
Test framework: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest
Test suite:     http://git.yoctoproject.org/cgit/cgit.cgi/patchtest-oe
#2 lore raw
In reply to Khem Raj
Quoted 14 lines · Khem Raj

This is a backport from 5.2 release upstream, it fixes long standing build failure on musl/aarch64

---
 ...sm-ptrace.h-should-not-depend-on-uap.patch | 62
+++++++++++++++++++
 .../linux-libc-headers_5.0.bb                 |  1 +
 ...ttribute-alias-with-Wattribute-alias.patch | 43 +++++++++++++
 3 files changed, 106 insertions(+)
 create mode 100644 meta/recipes-kernel/linux-libc-headers/linux-
libc-headers/0001-arm64-sve-uapi-asm-ptrace.h-should-not-depend-on-
uap.patch
 create mode 100644 meta/recipes-kernel/linux/files/0001-Replace-
Quoted 2 lines

Wattribute-alias-with-Wattribute-alias.patch

This second patch looks unrelated to this commit.

Thanks,
Anuj

Quoted 178 lines
(quoted diff) +0 -0

headers/0001-arm64-sve-uapi-asm-ptrace.h-should-not-depend-on- uap.patch b/meta/recipes-kernel/linux-libc-headers/linux-libc- headers/0001-arm64-sve-uapi-asm-ptrace.h-should-not-depend-on- uap.patch
new file mode 100644
index 0000000000..5ea46e9590

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +0 -0

arm64-sve-uapi-asm-ptrace.h-should-not-depend-on-uap.patch

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +1 -0
@@ -0,0 +1,62 @@
+From 35341ca0614ab13e1ef34ad4f29a39e15ef31fa8 Mon Sep 17 00:00:00

2001

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +6 -0
+From: Anisse Astier <[email protected]>
+Date: Mon, 17 Jun 2019 15:22:22 +0200
+Subject: [PATCH] arm64/sve: <uapi/asm/ptrace.h> should not depend on
+ <uapi/linux/prctl.h>
+
+Pulling linux/prctl.h into asm/ptrace.h in the arm64 UAPI headers

causes

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +2 -0
+userspace build issues for any program (e.g. strace and qemu) that
+includes both <sys/prctl.h> and <linux/ptrace.h> when using musl

libc:

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +5 -0
+
+  | error: redefinition of 'struct prctl_mm_map'
+  |  struct prctl_mm_map {
+
+See 

https://github.com/foundriesio/meta-lmp/commit/6d4a106e191b5d79c41b9ac78fd321316d3013c0

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +3 -0
+for a public example of people working around this issue.
+
+Although it's a bit grotty, fix this breakage by duplicating the

prctl

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +2 -0
+constant definitions. Since these are part of the kernel ABI, they
+cannot be changed in future and so it's not the end of the world to

have

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +5 -0
+them open-coded.
+
+Fixes: 43d4da2c45b2 ("arm64/sve: ptrace and ELF coredump support")
+
+Upstream-Status: Backport [

https://github.com/torvalds/linux/commit/35341ca0614ab13e1ef34ad4f29a39e15ef31fa8
]

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +9 -0
+Cc: [email protected]
+Acked-by: Dave Martin <[email protected]>
+Signed-off-by: Anisse Astier <[email protected]>
+Signed-off-by: Will Deacon <[email protected]>
+---
+ arch/arm64/include/uapi/asm/ptrace.h | 8 +++-----
+ 1 file changed, 3 insertions(+), 5 deletions(-)
+
+diff --git a/arch/arm64/include/uapi/asm/ptrace.h

b/arch/arm64/include/uapi/asm/ptrace.h

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +11 -0
+index 97c53203150b..e932284993d4 100644
+--- a/arch/arm64/include/uapi/asm/ptrace.h
++++ b/arch/arm64/include/uapi/asm/ptrace.h
+@@ -65,8 +65,6 @@
+ 
+ #ifndef __ASSEMBLY__
+ 
+-#include <linux/prctl.h>
+-
+ /*
+  * User structures for general purpose, floating point and debug

registers.

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +6 -0
+  */
+@@ -113,10 +111,10 @@ struct user_sve_header {
+ 
+ /*
+  * Common SVE_PT_* flags:
+- * These must be kept in sync with prctl interface in

<linux/ptrace.h>
++ * These must be kept in sync with prctl interface in <linux/prctl.h>
+ */

+-#define SVE_PT_VL_INHERIT		(PR_SVE_VL_INHERIT >> 16)
+-#define SVE_PT_VL_ONEXEC		(PR_SVE_SET_VL_ONEXEC >> 16)

++#define SVE_PT_VL_INHERIT ((1 << 17) /* PR_SVE_VL_INHERIT
*/ >> 16)
++#define SVE_PT_VL_ONEXEC ((1 << 18) /*
PR_SVE_SET_VL_ONEXEC */ >> 16)
+
+
+ /*
+--
+2.22.0

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +1 -0
+
(quoted diff) +0 -0

headers_5.0.bb b/meta/recipes-kernel/linux-libc-headers/linux-libc- headers_5.0.bb
index e76120c5b8..473688d95f 100644
--- a/meta/recipes-kernel/linux-libc-headers/linux-libc- headers_5.0.bb
+++ b/meta/recipes-kernel/linux-libc-headers/linux-libc- headers_5.0.bb

(quoted diff) +1 -0
@@ -12,6 +12,7 @@ SRC_URI_append_libc-musl = "\
 SRC_URI_append = "\
     file://0001-scripts-Use-fixed-input-and-output-files-instead-of-
 .patch \
     file://0001-kbuild-install_headers.sh-Strip-_UAPI-from-if-
 define.patch \
+    file://0001-arm64-sve-uapi-asm-ptrace.h-should-not-depend-on-
 uap.patch \

"

SRC_URI[md5sum] = "7381ce8aac80a01448e065ce795c19c0"

(quoted diff) +0 -0

alias-with-Wattribute-alias.patch b/meta/recipes- kernel/linux/files/0001-Replace-Wattribute-alias-with-Wattribute- alias.patch
new file mode 100644
index 0000000000..b41b277bb4

meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +0 -0

with-Wattribute-alias.patch

meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +1 -0
@@ -0,0 +1,43 @@
+From 229c673813b7dff90f82f1062724319dfeb6861a Mon Sep 17 00:00:00

2001

meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +3 -0
+From: Khem Raj <[email protected]>
+Date: Fri, 21 Dec 2018 15:57:35 -0800
+Subject: [PATCH] Replace "-Wattribute-alias" with "-Wattribute-

alias="

meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +17 -0
+
+makes gcc9 happy but makes gcc8 sad :(
+I guess I cant end world hunger
+
+Signed-off-by: Khem Raj <[email protected]>
+---
+ include/linux/compat.h   | 2 +-
+ include/linux/syscalls.h | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/include/linux/compat.h b/include/linux/compat.h
+index de0c13bdcd2c..95d1192da1f5 100644
+--- a/include/linux/compat.h
++++ b/include/linux/compat.h
+@@ -73,7 +73,7 @@
+ #ifndef COMPAT_SYSCALL_DEFINEx
+ #define COMPAT_SYSCALL_DEFINEx(x, name, ...)			
		\
meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +1 -0
+ 	__diag_push();							
	\
+-	__diag_ignore(GCC, 8, "-Wattribute-alias",			
	\
++	__diag_ignore(GCC, 8, "-Wattribute-alias=",			
	\
meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +1 -0
+ 		      "Type aliasing is used to sanitize syscall

arguments");\

meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +1 -0
+ 	asmlinkage long

compat_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)); \

meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +1 -0
+ 	asmlinkage long

compat_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \

meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +5 -0
+diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h
+index 2ff814c92f7f..58f761d2c9e9 100644
+--- a/include/linux/syscalls.h
++++ b/include/linux/syscalls.h
+@@ -234,7 +234,7 @@ static inline int is_syscall_trace_event(struct

trace_event_call *tp_event)
+ #ifndef __SYSCALL_DEFINEx
+ #define __SYSCALL_DEFINEx(x, name, ...)

	\
meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +1 -0
+ 	__diag_push();							

\
+- __diag_ignore(GCC, 8, "-Wattribute-alias",
\
++ __diag_ignore(GCC, 8, "-Wattribute-alias=",
\

meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +1 -0
+ 		      "Type aliasing is used to sanitize syscall

arguments");\

meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +2 -0
+ 	asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__))	\
+ 		__attribute__((alias(__stringify(__se_sys##name))));	

\
+--
+2.20.1
+

Signature · 1 line
2.22.0
author
#3 lore raw
Quoted 17 lines · Anuj
Quoted 10 lines · Khem Raj

This is a backport from 5.2 release upstream, it fixes long standing build failure on musl/aarch64

---
  ...sm-ptrace.h-should-not-depend-on-uap.patch | 62
+++++++++++++++++++
  .../linux-libc-headers_5.0.bb                 |  1 +
  ...ttribute-alias-with-Wattribute-alias.patch | 43 +++++++++++++
  3 files changed, 106 insertions(+)
Quoted 6 lines

create mode 100644 meta/recipes-kernel/linux-libc-headers/linux-
libc-headers/0001-arm64-sve-uapi-asm-ptrace.h-should-not-depend-on- uap.patch
create mode 100644 meta/recipes-kernel/linux/files/0001-Replace-
Wattribute-alias-with-Wattribute-alias.patch

Quoted 1 line

This second patch looks unrelated to this commit.

indeed

Quoted 182 lines

Thanks,
Anuj

Quoted 178 lines
(quoted diff) +0 -0

headers/0001-arm64-sve-uapi-asm-ptrace.h-should-not-depend-on- uap.patch b/meta/recipes-kernel/linux-libc-headers/linux-libc- headers/0001-arm64-sve-uapi-asm-ptrace.h-should-not-depend-on- uap.patch
new file mode 100644
index 0000000000..5ea46e9590

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +0 -0

arm64-sve-uapi-asm-ptrace.h-should-not-depend-on-uap.patch

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +1 -0
@@ -0,0 +1,62 @@
+From 35341ca0614ab13e1ef34ad4f29a39e15ef31fa8 Mon Sep 17 00:00:00

2001

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +6 -0
+From: Anisse Astier <[email protected]>
+Date: Mon, 17 Jun 2019 15:22:22 +0200
+Subject: [PATCH] arm64/sve: <uapi/asm/ptrace.h> should not depend on
+ <uapi/linux/prctl.h>
+
+Pulling linux/prctl.h into asm/ptrace.h in the arm64 UAPI headers

causes

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +2 -0
+userspace build issues for any program (e.g. strace and qemu) that
+includes both <sys/prctl.h> and <linux/ptrace.h> when using musl

libc:

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +5 -0
+
+  | error: redefinition of 'struct prctl_mm_map'
+  |  struct prctl_mm_map {
+
+See

https://github.com/foundriesio/meta-lmp/commit/6d4a106e191b5d79c41b9ac78fd321316d3013c0

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +3 -0
+for a public example of people working around this issue.
+
+Although it's a bit grotty, fix this breakage by duplicating the

prctl

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +2 -0
+constant definitions. Since these are part of the kernel ABI, they
+cannot be changed in future and so it's not the end of the world to

have

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +5 -0
+them open-coded.
+
+Fixes: 43d4da2c45b2 ("arm64/sve: ptrace and ELF coredump support")
+
+Upstream-Status: Backport [

https://github.com/torvalds/linux/commit/35341ca0614ab13e1ef34ad4f29a39e15ef31fa8
]

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +9 -0
+Cc: [email protected]
+Acked-by: Dave Martin <[email protected]>
+Signed-off-by: Anisse Astier <[email protected]>
+Signed-off-by: Will Deacon <[email protected]>
+---
+ arch/arm64/include/uapi/asm/ptrace.h | 8 +++-----
+ 1 file changed, 3 insertions(+), 5 deletions(-)
+
+diff --git a/arch/arm64/include/uapi/asm/ptrace.h

b/arch/arm64/include/uapi/asm/ptrace.h

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +11 -0
+index 97c53203150b..e932284993d4 100644
+--- a/arch/arm64/include/uapi/asm/ptrace.h
++++ b/arch/arm64/include/uapi/asm/ptrace.h
+@@ -65,8 +65,6 @@
+
+ #ifndef __ASSEMBLY__
+
+-#include <linux/prctl.h>
+-
+ /*
+  * User structures for general purpose, floating point and debug

registers.

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +6 -0
+  */
+@@ -113,10 +111,10 @@ struct user_sve_header {
+
+ /*
+  * Common SVE_PT_* flags:
+- * These must be kept in sync with prctl interface in

<linux/ptrace.h>
++ * These must be kept in sync with prctl interface in <linux/prctl.h>
+ */

+-#define SVE_PT_VL_INHERIT		(PR_SVE_VL_INHERIT >> 16)
+-#define SVE_PT_VL_ONEXEC		(PR_SVE_SET_VL_ONEXEC >> 16)

++#define SVE_PT_VL_INHERIT ((1 << 17) /* PR_SVE_VL_INHERIT
*/ >> 16)
++#define SVE_PT_VL_ONEXEC ((1 << 18) /*
PR_SVE_SET_VL_ONEXEC */ >> 16)

meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001- new file +6 -0
+
+
+ /*
+--
+2.22.0
+
(quoted diff) +0 -0

headers_5.0.bb b/meta/recipes-kernel/linux-libc-headers/linux-libc- headers_5.0.bb
index e76120c5b8..473688d95f 100644
--- a/meta/recipes-kernel/linux-libc-headers/linux-libc- headers_5.0.bb
+++ b/meta/recipes-kernel/linux-libc-headers/linux-libc- headers_5.0.bb

(quoted diff) +1 -0
@@ -12,6 +12,7 @@ SRC_URI_append_libc-musl = "\
  SRC_URI_append = "\
      file://0001-scripts-Use-fixed-input-and-output-files-instead-of-
 .patch \
      file://0001-kbuild-install_headers.sh-Strip-_UAPI-from-if-
 define.patch \
+    file://0001-arm64-sve-uapi-asm-ptrace.h-should-not-depend-on-
 uap.patch \

"

SRC_URI[md5sum] = "7381ce8aac80a01448e065ce795c19c0"

(quoted diff) +0 -0

alias-with-Wattribute-alias.patch b/meta/recipes- kernel/linux/files/0001-Replace-Wattribute-alias-with-Wattribute- alias.patch
new file mode 100644
index 0000000000..b41b277bb4

meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +0 -0

with-Wattribute-alias.patch

meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +1 -0
@@ -0,0 +1,43 @@
+From 229c673813b7dff90f82f1062724319dfeb6861a Mon Sep 17 00:00:00

2001

meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +3 -0
+From: Khem Raj <[email protected]>
+Date: Fri, 21 Dec 2018 15:57:35 -0800
+Subject: [PATCH] Replace "-Wattribute-alias" with "-Wattribute-

alias="

meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +17 -0
+
+makes gcc9 happy but makes gcc8 sad :(
+I guess I cant end world hunger
+
+Signed-off-by: Khem Raj <[email protected]>
+---
+ include/linux/compat.h   | 2 +-
+ include/linux/syscalls.h | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/include/linux/compat.h b/include/linux/compat.h
+index de0c13bdcd2c..95d1192da1f5 100644
+--- a/include/linux/compat.h
++++ b/include/linux/compat.h
+@@ -73,7 +73,7 @@
+ #ifndef COMPAT_SYSCALL_DEFINEx
+ #define COMPAT_SYSCALL_DEFINEx(x, name, ...)			
		\
meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +1 -0
+ 	__diag_push();							
	\
+-	__diag_ignore(GCC, 8, "-Wattribute-alias",			
	\
++	__diag_ignore(GCC, 8, "-Wattribute-alias=",			
	\
meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +1 -0
+ 		      "Type aliasing is used to sanitize syscall

arguments");\

meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +1 -0
+ 	asmlinkage long

compat_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)); \

meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +1 -0
+ 	asmlinkage long

compat_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \

meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +5 -0
+diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h
+index 2ff814c92f7f..58f761d2c9e9 100644
+--- a/include/linux/syscalls.h
++++ b/include/linux/syscalls.h
+@@ -234,7 +234,7 @@ static inline int is_syscall_trace_event(struct

trace_event_call *tp_event)
+ #ifndef __SYSCALL_DEFINEx
+ #define __SYSCALL_DEFINEx(x, name, ...)

	\
meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +1 -0
+ 	__diag_push();							

\
+- __diag_ignore(GCC, 8, "-Wattribute-alias",
\
++ __diag_ignore(GCC, 8, "-Wattribute-alias=",
\

meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +1 -0
+ 		      "Type aliasing is used to sanitize syscall

arguments");\

meta/recipes-kernel/linux/files/0001-Replace-Wattribute-alias- new file +2 -0
+ 	asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__))	\
+ 		__attribute__((alias(__stringify(__se_sys##name))));	

\
+--
+2.20.1
+

Signature · 1 line
2.22.0