Gentoo Archives: gentoo-commits

From: Sergei Trofimovich <slyfox@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/rr/files/, dev-util/rr/
Date: Sun, 06 Jan 2019 16:32:41
Message-Id: 1546792344.27bcacb0fe144c2de240365826d65c091c998c2c.slyfox@gentoo
1 commit: 27bcacb0fe144c2de240365826d65c091c998c2c
2 Author: Han Han <hanhanzhiyeqianke <AT> gmail <DOT> com>
3 AuthorDate: Sun Jan 6 21:20:54 2019 +0000
4 Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
5 CommitDate: Sun Jan 6 16:32:24 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=27bcacb0
7
8 dev-util/rr-5.2.0: Fix error type ::ucontext_t not correctly defined
9
10 Introduce rr commit:
11 https://github.com/mozilla/rr/commit/53c5bd72bae089616a3ca626b8af240481d70e6f
12
13 Closes: https://bugs.gentoo.org/669788
14
15 Signed-off-by: Han Han <hanhanzhiyeqianke <AT> gmail.com>
16 Closes: https://github.com/gentoo/gentoo/pull/10756
17 Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
18
19 dev-util/rr/files/rr-5.2.0-ucontext_t.patch | 65 +++++++++++++++++++++++++++++
20 dev-util/rr/rr-5.2.0.ebuild | 6 +--
21 2 files changed, 68 insertions(+), 3 deletions(-)
22
23 diff --git a/dev-util/rr/files/rr-5.2.0-ucontext_t.patch b/dev-util/rr/files/rr-5.2.0-ucontext_t.patch
24 new file mode 100644
25 index 00000000000..0015f0b150c
26 --- /dev/null
27 +++ b/dev-util/rr/files/rr-5.2.0-ucontext_t.patch
28 @@ -0,0 +1,65 @@
29 +From 53c5bd72bae089616a3ca626b8af240481d70e6f Mon Sep 17 00:00:00 2001
30 +From: Robert O'Callahan <robert@×××××××××.org>
31 +Date: Fri, 10 Aug 2018 15:17:55 +1200
32 +Subject: [PATCH] Remove ucontext_t/rt_sigframe from kernel-abi
33 +
34 +These were added in 18bb097736a1b728f1e5bfec972ca10f6e763d82 to help us determine
35 +the sigmask effect of rt_sigreturn syscalls, but they're no longer needed
36 +because we query the new mask via /proc instead.
37 +
38 +Resolves #2237
39 +---
40 + src/kernel_abi.h | 33 ---------------------------------
41 + 1 file changed, 33 deletions(-)
42 +
43 +diff --git a/src/kernel_abi.h b/src/kernel_abi.h
44 +index e73e49933..29d3c9242 100644
45 +--- a/src/kernel_abi.h
46 ++++ b/src/kernel_abi.h
47 +@@ -1609,23 +1609,6 @@ struct X86Arch : public BaseArch<SupportedArch::x86, WordSize32Defs> {
48 + };
49 + RR_VERIFY_TYPE_ARCH(SupportedArch::x86, ::sigcontext, sigcontext);
50 +
51 +- struct ucontext_t {
52 +- uint32_t uc_flags;
53 +- uint32_t uc_link;
54 +- stack_t uc_stack;
55 +- sigcontext uc_mcontext;
56 +- kernel_sigset_t uc_sigmask;
57 +- };
58 +-
59 +- struct rt_sigframe {
60 +- uint32_t pretcode;
61 +- int sig;
62 +- uint32_t pinfo;
63 +- uint32_t puc;
64 +- siginfo_t info;
65 +- struct ucontext_t uc;
66 +- };
67 +-
68 + struct _fpstate_32 {
69 + uint32_t cw, sw, tag, ipoff, cssel, dataoff, datasel;
70 + uint16_t _st[40];
71 +@@ -1806,22 +1789,6 @@ struct X64Arch : public BaseArch<SupportedArch::x86_64, WordSize64Defs> {
72 + RR_VERIFY_TYPE_ARCH(SupportedArch::x86_64, ::user_fpregs_struct,
73 + user_fpregs_struct);
74 +
75 +- struct ucontext_t {
76 +- uint64_t ucflags;
77 +- ptr<struct ucontext_t> uc_link;
78 +- stack_t uc_stack;
79 +- struct sigcontext uc_mcontext;
80 +- sigset_t uc_sigmask;
81 +- user_fpregs_struct uc_fpregs;
82 +- };
83 +- RR_VERIFY_TYPE_ARCH(SupportedArch::x86_64, ::ucontext_t, ucontext_t);
84 +-
85 +- struct rt_sigframe {
86 +- ptr<char> pretcode;
87 +- struct ucontext_t uc;
88 +- siginfo_t info;
89 +- };
90 +-
91 + struct user {
92 + struct user_regs_struct regs;
93 + int u_fpvalid;
94
95 diff --git a/dev-util/rr/rr-5.2.0.ebuild b/dev-util/rr/rr-5.2.0.ebuild
96 index 330b1821df1..8a48df5899c 100644
97 --- a/dev-util/rr/rr-5.2.0.ebuild
98 +++ b/dev-util/rr/rr-5.2.0.ebuild
99 @@ -31,9 +31,9 @@ DEPEND+="
100 sys-devel/gdb[xml]
101 )"
102
103 -#PATCHES=(
104 -# "${FILESDIR}"/${P}-sysmacros.patch
105 -#)
106 +PATCHES=(
107 + "${FILESDIR}"/${P}-ucontext_t.patch
108 +)
109
110 pkg_setup() {
111 if use kernel_linux; then