[OE-core] [PATCH] linux-libc-headers: ptrace.h: remove ptrace_peeksiginfo_args
Saul Wold
sgw at linux.intel.com
Mon Aug 26 04:08:46 UTC 2013
On 08/25/2013 08:25 PM, Bruce Ashfield wrote:
> The addition of ptrace_peeksiginfo_args to the uapi in kernel commit
> 84c751bd [ptrace: add ability to retrieve signals without removing from a queue (v4)]
> means that existing applications using glibc versions that define ptrace_peeksiginfo_args
> in sys/ptrace.h will get duplicate structure definitions like:
>
> | In file included from /poky-master/build/tmp/work/i586-poky-linux/strace/4.8-r0/strace-4.8/process.c:66:0:
> | /poky-master/build/tmp/sysroots/qemux86/usr/include/linux/ptrace.h:58:8: error: redefinition of 'struct ptrace_peeksiginfo_args'
> | struct ptrace_peeksiginfo_args {
> | ^
> | In file included from /poky-master/build/tmp/work/i586-poky-linux/strace/4.8-r0/strace-4.8/defs.h:159:0,
> | from /poky-master/build/tmp/work/i586-poky-linux/strace/4.8-r0/strace-4.8/process.c:37:
> | /poky-master/build/tmp/sysroots/qemux86/usr/include/sys/ptrace.h:191:8: note: originally defined here
> | struct ptrace_peeksiginfo_args
> | ^
> | make[2]: *** [process.o] Error 1
>
> Reverting to the previous status of not exporting this structure temporarily
> fixes applications, until they can be adjusted to not mix sys/ptrace.h and
> linux/ptrace.h includes.
>
> Signed-off-by: Bruce Ashfield <bruce.ashfield at windriver.com>
> ---
> ...1-ptrace.h-remove-ptrace_peeksiginfo_args.patch | 50 ++++++++++++++++++++
> .../linux-libc-headers/linux-libc-headers_3.10.bb | 2 +-
> 2 files changed, 51 insertions(+), 1 deletion(-)
> create mode 100644 meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-ptrace.h-remove-ptrace_peeksiginfo_args.patch
>
> diff --git a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-ptrace.h-remove-ptrace_peeksiginfo_args.patch b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-ptrace.h-remove-ptrace_peeksiginfo_args.patch
> new file mode 100644
> index 0000000..da2e117
> --- /dev/null
> +++ b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-ptrace.h-remove-ptrace_peeksiginfo_args.patch
> @@ -0,0 +1,50 @@
> +From 7dddfb8fec5317ea16154d30e8e18b6559979b60 Mon Sep 17 00:00:00 2001
> +From: Bruce Ashfield <bruce.ashfield at windriver.com>
> +Date: Sun, 25 Aug 2013 22:51:07 -0400
> +Subject: [PATCH] ptrace.h: remove ptrace_peeksiginfo_args
> +
> +The addition of ptrace_peeksiginfo_args to the uapi in kernel commit
> +84c751bd [ptrace: add ability to retrieve signals without removing from a queue (v4)]
> +means that existing applications using glibc versions that define ptrace_peeksiginfo_args
> +in sys/ptrace.h will get duplicate structure definitions like:
> +
> + | In file included from /poky-master/build/tmp/work/i586-poky-linux/strace/4.8-r0/strace-4.8/process.c:66:0:
> + | /poky-master/build/tmp/sysroots/qemux86/usr/include/linux/ptrace.h:58:8: error: redefinition of 'struct ptrace_peeksiginfo_args'
> + | struct ptrace_peeksiginfo_args {
> + | ^
> + | In file included from /poky-master/build/tmp/work/i586-poky-linux/strace/4.8-r0/strace-4.8/defs.h:159:0,
> + | from /poky-master/build/tmp/work/i586-poky-linux/strace/4.8-r0/strace-4.8/process.c:37:
> + | /poky-master/build/tmp/sysroots/qemux86/usr/include/sys/ptrace.h:191:8: note: originally defined here
> + | struct ptrace_peeksiginfo_args
> + | ^
> + | make[2]: *** [process.o] Error 1
> +
> +Reverting to the previous status of not exporting this structure temporarily
> +fixes applications, until they can be adjusted to not mix sys/ptrace.h and
> +linux/ptrace.h includes.
> +
> +Signed-off-by: Bruce Ashfield <bruce.ashfield at windriver.com>
Just for the record, it has no Upstream-Status, I know how much you
dislike upstream status and just how inappropriate this patch is!
I will put this in MUT so we can move forward tonight.
Thanks
Sau!
> +---
> + include/uapi/linux/ptrace.h | 6 ------
> + 1 file changed, 6 deletions(-)
> +
> +diff --git a/include/uapi/linux/ptrace.h b/include/uapi/linux/ptrace.h
> +index 52ebcc8..524599d 100644
> +--- a/include/uapi/linux/ptrace.h
> ++++ b/include/uapi/linux/ptrace.h
> +@@ -55,12 +55,6 @@
> +
> + #define PTRACE_PEEKSIGINFO 0x4209
> +
> +-struct ptrace_peeksiginfo_args {
> +- __u64 off; /* from which siginfo to start */
> +- __u32 flags;
> +- __s32 nr; /* how may siginfos to take */
> +-};
> +-
> + /* Read signals from a shared (process wide) queue */
> + #define PTRACE_PEEKSIGINFO_SHARED (1 << 0)
> +
> +--
> +1.7.10.4
> +
> diff --git a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_3.10.bb b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_3.10.bb
> index eb04367..b2e6f0f 100644
> --- a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_3.10.bb
> +++ b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_3.10.bb
> @@ -1,6 +1,6 @@
> require linux-libc-headers.inc
>
> -PR = "r0"
> +SRC_URI += "file://0001-ptrace.h-remove-ptrace_peeksiginfo_args.patch"
>
> SRC_URI[md5sum] = "72d0a9b3e60cd86fabcd3f24b1708944"
> SRC_URI[sha256sum] = "46c9e55e1fddf40813b8d697d5645037a8e2af5c1a8dff52b3fe82b5021582b8"
>
More information about the Openembedded-core
mailing list